请原谅我的英语,我是法国人!
所以,我有一个小问题...... 您是否知道在列表视图中以清晰的方式卸载图像? 我想显示可见项目的图像,并释放内存,卸载其他项目上的图像......
可能在OnScrollListener中吗?
谢谢!
答案 0 :(得分:2)
实际上ListView
是以这种方式设计的,用户不必费心加载和卸载它的数据。
您正在提供包含所有数据(项目)的Adapter
,并将此Adapter
添加到ListView
,后者又知道如何管理这些项目 - 基本上只加载来自适配器的那些对手机用户可见的项目。
内置适配器很少,例如SimpleCursorAdapter
,大部分时间都足以满足简单需求。但是如果你想要更多的扩展可用性,你更愿意编写自己的适配器,实际上并不那么难。在本教程中,您可以阅读有关编写自己的适配器的信息:http://www.ezzylearning.com/tutorial.aspx?tid=1763429
另外,您可以在Android文档中详细了解ListView
:http://developer.android.com/guide/topics/ui/layout/listview.html
答案 1 :(得分:1)
ListView使用您转换的项目。所以你只有2或3个项目比实际看到的多。您无需卸载这些图像。实际上最好不要这样做,因为这会减慢你的应用程序。
重要的部分是:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = convertView;
if (view == null) {
LayoutInflater inflater = (LayoutInflater) ctx
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.your_item, null);
}
// set images on view
}