美文网首页
2、Listview不能显示正常的条目,只显示一条或二条

2、Listview不能显示正常的条目,只显示一条或二条

作者: 大佬不是大佬 | 来源:发表于2019-07-24 22:51 被阅读0次

    造成的原因:由于 ListView在scrollView中无法正确计算它的大小, 故只显示一行。

    解决思路:

        1,重写 ListView,覆盖 onMeasure()。 

      2,动态设置 listView高度,不需要重写 listView。(比较复杂,不推荐。)

      3,在xml文件中,直接将Listview的高度写死。(适合 listView不扩展。)

      4,避免ScrollView嵌套Listview,比如使用listview的addHeader()

    我使用的是第1种方法,有时第3种。

    public class MyListView extends ListView {

    @Override

        protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

    // 加上这句代码就行了。

            int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,MeasureSpec.AT_MOST);

            super.onMeasure(widthMeasureSpec, expandSpec);

        }

    }

    相关文章

      网友评论

          本文标题:2、Listview不能显示正常的条目,只显示一条或二条

          本文链接:https://www.haomeiwen.com/subject/ntkqrctx.html