我正在使用带有ArrayAdapter的ListView,并且在ListView.setAdapter(ArrayAdapter,...)
看到ListView.getChildCount()==0
之后执行代码。
有没有办法等待UI线程在继续之前完成填充ListView?
提前致谢, 莱尼
答案 0 :(得分:1)
ListView.getChildCount()继承自ViewGroup,与适配器管理的项目无关,但与ListView管理的子视图无关。 要获取ListView显示的项目数,请使用getCount()返回适配器管理的项目数。
答案 1 :(得分:0)
我有一个类似的问题,我解决了创建一个具有while循环的线程,该循环只能在列表加载后继续。
new Thread(new Runnable() {
public void run() {
while(listView.getCount() == 0) ;
}
}).start();
这种方法可以完成,因为我保证在这一点上列表中有一些东西。小心使用这种方法。它不是最好的,但它是我找到的那个。