适配器getCount和listView getChildCount不相等

时间:2011-04-07 09:56:34

标签: android testing

我正在尝试为我的Android应用程序设置一些测试,我正在测试数据库中的条目创建是否显示在我的ListView中。

这里有一些代码片段:

mDbHelper.createAccount();
assertEquals(1, mAccountListAdapter.getCount());
assertEquals(1, mAccountList.getChildCount());

第一个断言正常 但在第二个,getChildCount返回0。

所以适配器很好,但是listView没有显示它?

当我手动测试时,该功能可用。

3 个答案:

答案 0 :(得分:2)

mAccountList.getChildCount()是指ViewGroup的方法,它返回此视图包含的视图数,而不是ListView方法本身。所以你的断言是无效的。

答案 1 :(得分:1)

getCount()方法返回列表中包含的项目数 getChildCount()方法返回屏幕中可见的项目数。

答案 2 :(得分:0)

getCount()返回您适配器中的项数(列表中的总数), getChildCount()是一个ViewGroup方法,可返回您的子视图数。 ListView会主动重用视图,因此,如果您的列表中包含 1000 个项目,则 getCount()将返回 1000 getChildCount()- 大约10左右 ...