我创建了一个自定义列表视图,其中使用了两个文本视图和一个图像视图(显示列表项是否是最喜欢的)。如果有人选择该项目作为收藏,则会出现图像视图,否则将无法显示。 SQLite DB用于存储收藏列表项。并使用此DB填充列表视图。一切正常,但是当我将列表项标记为项目列表中的突出显示时,图像视图将不会出现,但SQLite DB将使用此新项目列表进行更新,以便当我重新加载同一页面时,它将显示为最喜欢的项目。我该如何解决这个问题?
答案 0 :(得分:1)
您可能需要提供一些示例代码,但您可以使用onclick重新绘制listview项目,使项目视图无效,或者通过向适配器通知更改可能更容易。
e.g。
@Override
public void onCreate( Bundle savedInstance )
{
...
MyAdapter myAdapter = new MyAdapter( this );
ListView listView = ( ListView ) findViewById( R.id.list_view );
listView.setAdapter( myAdapter );
listView.setOnItemClickListener( new OnItemClickListener()
{
@Override
public void onItemClick( AdapterView<?> adapter, View listItemView,
int position, long id )
{
...
adapter.notifyDataSetChanged();
...
}
}
}
这不是一个完美的解决方案,但会给你一个想法。