码迷,mamicode.com
首页 > 其他好文 > 详细

解决ScrollView下嵌套ListView/GridView进页面不在顶部的问题以及数据显示不全的问题( 只显示一行)

时间:2015-07-28 18:46:29      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:android   scrollview   listview   gridview   不在顶部   

在网上看到如下的解决方案,我现在定义了多个listview,所以出现了有时候起作用有时候不起作用,错误的解决方法如下:

  • 错误解决方案1:

技术分享

  • 错误解决方案2:

技术分享

正确解决方案,重写ScrollView,添加如下方法

  • 正确解决方案:
/**
 * 禁止ScrollView内布局变化后自动滚动
 */
@Override
protected int computeScrollDeltaToGetChildRectOnScreen(Rect rect) {
    return 0;
}

解决了上面的问题,其实在ScrollView镶嵌listview/gridView中最常见的一个问题就是,数据显示不全的问题,网上有如下错误的做法,也是我刚开始做android项目当时的错误解决方法:

  • 错误解决方法1:

技术分享

正确的解决方案就是重写listview或者gridview

  • 正确几觉方案:
/**
 * 防止listview和gridview、ScrollView的冲突
 * @author zsl
 * @blog http://blog.csdn.net/yy1300326388
 *
 */
public class MyListView extends ListView {

    public MyListView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    //防止数据显示不全
    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
                MeasureSpec.AT_MOST);
        super.onMeasure(widthMeasureSpec, expandSpec);
    }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

解决ScrollView下嵌套ListView/GridView进页面不在顶部的问题以及数据显示不全的问题( 只显示一行)

标签:android   scrollview   listview   gridview   不在顶部   

原文地址:http://blog.csdn.net/yy1300326388/article/details/47107089

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!