カスタムカーソルアダプターを介して生成されたリストビューがあります
リストを上下にスクロールすると、一部のテキストビューがランダムに緑に変わることを除いて、すべてが正常に機能しています。
リストビューを生成する私のコードは次のとおりです。
private class AchievementAdapter extends CursorAdapter {
public AchievementAdapter(Context context, Cursor c) {
super(context, c);
}
@Override
public void bindView(View v, Context context, Cursor cursor) {
TextView tv = (TextView) v.findViewById(R.id.achView1);
if(cursor.getString(cursor.getColumnIndex("completed")).equals("yes")) {
tv.setText(cursor.getString(cursor.getColumnIndex("name"))+" (completed)");
tv.setTextColor(Color.GREEN);
}
else {
tv.setText(cursor.getString(cursor.getColumnIndex("name")));
}
}
@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
LayoutInflater inflater = LayoutInflater.from(context);
View v = inflater.inflate(R.layout.achievements_item, parent, false);
return v;
}
}
setcachecolorhintについて何か読んだのですが、このメソッドはテキストビューには適用されません。スクロールしたときにテキストビューの色がランダムに変更されないようにするには、どうすればよいですか?