的解決辦法 前些日子在開發中用到了須要ScrollView嵌套GridView的狀況,因爲這兩款控件都自帶滾動條,當他們碰到一塊兒的時候便會出問題,即GridView會顯示不全。 解決辦法,自定義一個GridView控件 public class MyGridView extends GridView { public MyGridView(Context context, AttributeSet attrs) { super(context, attrs); } public MyGridView(Context context) { super(context); } public MyGridView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } @Override public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int expandSpec = MeasureSpec.makeMeasureSpec( Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST); super.onMeasure(widthMeasureSpec, expandSpec); } } 該自定義控件只是重寫了GridView的onMeasure方法,使其不會出現滾動條,ScrollView嵌套ListView也是一樣的道理,再也不贅述。 XML佈局代碼 <ScrollView Android:layout_height="wrap_content" Android:layout_width="fill_parent" android:id="@+id/scroll_content"> <com.yourclass.MyGridView xmlns:Android="http://schemas.android.com/apk/res/android" Android:id="@+id/grid_view" android:layout_width="fill_parent" Android:layout_height="wrap_content" android:numColumns="auto_fit" Android:horizontalSpacing="1dip" android:verticalSpacing="1dip" Android:columnWidth="150dip" android:stretchMode="columnWidth" Android:gravity="center"> </com.yourclass.MyGridView> </ScrollView> Java調用代碼 MyGridView gridview = (MyGridView) findViewById(R.id.grid_view); gridview.setAdapter(new ImageAdapter(this));