Доброе утро.элемент краски в ListView
У меня есть ListView записей, где, выбрав один из них, показывает деталь. Мне нужно изменить цвет фона записей, к которым обращались. Для этого я беру выбранный элемент и возвращает значение intentificacion для 1.
lv_entries.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Entry entry = (Entry) parent.getItemAtPosition(position);
entry.setSeleccion(1);
Intent intent = new Intent(ListEntriesActivity.this,
EntryDetailActivity.class);
intent.putExtra(Keys.ENTRY, entry);
startActivity(intent);
}
});
Затем я сравниваю адаптер, если запись была доступна и изменить цвет фона:
public View getView(int position, View convertView, ViewGroup parent) {
Entry entry = getItem(position);
ViewHolder viewHolder;
if (convertView == null) {
LayoutInflater inflater = LayoutInflater.from(getContext());
convertView = inflater.inflate(R.layout.activity_list_entries,
parent, false);
viewHolder = new ViewHolder();
viewHolder.tv_entry_title = (TextView) convertView
.findViewById(R.id.tv_list_titulo);
viewHolder.tv_entry_link = (TextView) convertView
.findViewById(R.id.tv_list_link);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
if(entry.getSeleccion()==1){
convertView.setBackgroundColor(R.color.azul);
}
viewHolder.tv_entry_title.setText(entry.getTitle());
viewHolder.tv_entry_link.setText(entry.getLink());
return convertView;
}
проблема что в дополнение к рисованию выбранного элемента, когда я иду по списку, будут рисовать другие предметы.
Кто-то может мне помочь?
извините за мой английский.
Спасибо. Это сработало – ferpahud
Нет проблем, это опять же потому, что элементы списка списка переработаны. Поэтому, когда вызывался getView, это было для переработанного элемента с другим фоном. –