经常要在ScrollView中嵌入ListView,网上方法一大堆,但都比较繁琐。
本人认为比较好的办法如下:
继承ListView,重写onMeasure即可。
同样,当ListView中嵌套一个GridView时,也需要重写一下GridView,否则只会显示一行GridView的数据。
本人认为比较好的办法如下:
- import android.widget.ListView;
- /**
- * ScrollView中嵌入ListView,让ListView全显示出来
- * @author reyo
- *
- */
- public class MyListView extends ListView{
- public MyListView(android.content.Context context,android.util.AttributeSet attrs){
- super(context, attrs);
- }
- /**
- * 设置不滚动
- */
- public void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
- {
- int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
- MeasureSpec.AT_MOST);
- super.onMeasure(widthMeasureSpec, expandSpec);
- }
- }
继承ListView,重写onMeasure即可。
同样,当ListView中嵌套一个GridView时,也需要重写一下GridView,否则只会显示一行GridView的数据。
- import android.widget.GridView;
- public class MyGridView extends GridView {
- public MyGridView(android.content.Context context,
- android.util.AttributeSet attrs) {
- super(context, attrs);
- }
- /**
- * 设置不滚动
- */
- public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
- MeasureSpec.AT_MOST);
- super.onMeasure(widthMeasureSpec, expandSpec);
- }
- }