我有一個Activity
與片段,顯示ListView
包含簡單的TextViews
。菜單項可以通過意圖觸發另一個Activity
。新的Activity
使用ArrayList.clear()
清除ArrayAdapter
下的ArrayList
的ListView
。Android ListView.getChildCount()大於getCount()
當我從新Activity
備份到我原來的一個與ListView
,並且在onResume()
得到控制,我發現我的ListView.getChildCount()
是一樣的,當有人離開,由於意向爲,但ListView.getCount()
現在是正確的零!
我已經嘗試使用適配器的clear()
方法,我試過Adapter.notifyDataSetChanged()
(雖然我不應該)。
如果我從片段本身修改底層ArrayList
,一切似乎都很好。例如,點擊一個元素給你一個選項來刪除它,向上或向下移動它,等等......這工作正常。
此外,如果我然後離開列表Activity
並再次返回它,一切都很好。很明顯,ArrayList是相同的列表。我從來沒有創建一個新的列表,只有。 clear()
它。
任何想法如何兒童計數可能超過基本元素數?也許某種觀點的ArrayList
不會觸發,因爲Activity
已被暫停?在這種情況下,我如何再次同步它們?例如,我嘗試了invalidate()
。
這是在API 23下。