这个几天弄一个listview显示的问题,遇到listview无法显示的情况,通过查找代码增加log信息,最后可以正常显示了,在此记录一下,以方便后续同学遇到类似情况,可以快速解决。
通过查找资料发现,当遇到无法显示的时候,可以通过如下几部进行查找原因:
1、查布局,首先LinearLayout 布局里面要有 android:orientation="vertical" 设置,进行垂直显示设置。
<ListView android:id="@+id/listView0" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:choiceMode="singleChoice"> </ListView>
2、查listview是否正确设置adapter,在初始化的时候,一定要确保 设置了 adapter
adapter0 = new WayAdapter(context, list, true); listView0.setAdapter(adapter0);
3、查数据是否我null, 在设局更新的地方调用一定要 调用add,把要增加的数据添加对应的ArrayList里面。然后在调用的地方增加log,看下list.size()是不是为null。
4、查 notifyDataSetChanged () 是否被被调用,当数据更新的时候,即list列表更新的时候,一定要调用 notify函数,然后才能更新。
5、查adapter函数调用,在adapter 类里面的每个函数都添加上log看下,是否被掉到。里面当getCount为 0 的时候,getView函数是不会被调用到的。所以,当list.size() 不为 零 时,确保getCount函数返回值准确。
以上就是listview在不显示的时候,解决的几个办法。记录一下,希望对后续同学提供帮助。