GridView需要使用自定义的,定义一个MyGridView
public class MyGridView extends GridView {
}
重写onMeasure方法
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
布局中使用自定义的 GridView
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<com.sportstar.widget.MyGridView
android:id="@+id/gridView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:horizontalSpacing="4dp"
android:numColumns="3"
android:stretchMode="columnWidth"
android:verticalSpacing="4dp" >
</com.sportstar.widget.MyGridView>
</LinearLayout>
</ScrollView>
在代码中设置ScrollView的属性
scrollView = (ScrollView) findViewById(R.id.scrollView1);
scrollView.smoothScrollTo(0,0);
设置一下GridView禁止滚动
gridView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return MotionEvent.ACTION_MOVE == event.getAction() ? true
: false;
}
});
-------------------------------------------------------------------------------------------------------------割割更健康-----------------------------------------------------------------------------------------------------------
好了 打完收工,看看效果图:
可以看到,GridView已经全部展开
有什么疑问,欢迎留言,评论,私信,求不喷~~