Java 如何在游标适配器中更新视图?
我扩展了一个游标适配器Java 如何在游标适配器中更新视图?,java,android,Java,Android,我扩展了一个游标适配器 public class MyAdapter extends CursorAdapter { MyAdapter(View view, Context context, Cursor cursor) { ... } public void bindView(View view, Context con, Cursor c) { if (OtherClass.currentlyPlaying.equals
public class MyAdapter extends CursorAdapter {
MyAdapter(View view, Context context, Cursor cursor) {
...
}
public void bindView(View view, Context con, Cursor c) {
if (OtherClass.currentlyPlaying.equals(ring)) {
TextView.setTextColor(Color.red);
}
}
}
“currentlyPlaying”是另一个类中与当前播放的标题相对应的字符串。“环”是在适配器中绑定视图时找到的标题。我让textview在选中时更改颜色。当它被选中时,它会改变颜色,但是当我在listview中单击另一个项目时,它也会改变颜色,但是被选中的旧项目仍然保持相同的颜色
有人能告诉我是否有更新视图的方法,或者我将如何应用视图持有者?谢谢 尝试使用“if”的else{}部分,并将其设置为默认颜色。差不多
if (OtherClass.currentlyPlaying.equals(ring)) {
TextView.setTextColor(Color.red);
}else{
TextView.setTextColor(Your default color);
}
从我得到的是,旧项目没有得到重新绘制。ViewHolder也可以帮助您,但为此,您需要实现它。您可以在此线程中尝试以下教程
你可能会发现它很有用