在我的应用程序中,我有一个带有 ArrayAdapter 的 ListView。每个 Item 都包含一张图片,这需要一些时间来渲染。现在我想在列表末尾动态添加项目。问题是,无论何时 add() 被称为我的 List 都会闪烁,因为 notifyDataSetChanged() 被调用并且我的图片需要几毫秒来渲染。我试图通过调用 setNotifyOnChange(false) 来避免这种情况。我用它解决了闪烁问题,但不幸的是它只是不规则地更新我的列表的“长度”。有没有办法更新我的列表视图的“长度”,而不更新显示的视图?
问问题
702 次
1 回答
0
我同意应该避免 UI 线程,尤其是对于列表,尤其是在为每个列表项使用图像时。也许您需要找到一个更强大的适用于图像的列表适配器?有关如何改进您自己的列表的一些有用的想法/提示,请参阅此问题。
此外,AndroidQuery (AQuery) 库在获取图像以在 arrayadapter 中使用时可能很有用:通过 AQuery 加载图像。它还负责图像缓存的负担,我发现这非常有用。
于 2013-06-14T21:29:30.723 回答