У меня есть listview с пользовательским адаптером. Каждый элемент в списке имеет изображение, текст и флажок.установить флажок как не редактируемый в listview с пользовательским адаптером
Мое требование состоит в том, что если значение текстового представления в определенном элементе является «xyz», я должен установить этот флажок как незаменимый (флажок всегда должен быть проверен, и пользователю не разрешено его отменить).
Я пробовал, установка, setClickable(false)
и setEnabled(false)
, но оба не работал. Пожалуйста, обратите внимание на приведенный ниже код ...
`
@Override
public View getView(final int position, View convertView, ViewGroup root) {
View view = convertView;
if (view == null)
view = inflater.inflate(R.layout.item_favorite_list, null);
view.setTag(teams.get(position).get("name"));
((TextView) view.findViewById(R.id.name)).setText(teams.get(
position).get("name"));
String name = ((TextView) view.findViewById(R.id.name)).getText().toString();
Log.d(Const.TAG, "Name = "+name);
CheckBox checkBox = (CheckBox) view.findViewById(R.id.checkBox);
checkBox.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
CheckBox checkBox = (CheckBox) view;
// do something here..
});
if (favoriteTeams.contains(teams.get(position).get("name")))
checkBox.setChecked(true);
else
checkBox.setChecked(false);
//Need to set the checkBox to non-editable
if(teams.get(position).get("name").equalsIgnoreCase("xyz"))
{
Log.d(Const.TAG, "Position = "+position);
Log.d(Const.TAG, "Team = "+teams.get(position).get("name").toString());
checkBox.setClickable(false);
checkBox.setEnabled(false);
}
return view;
}
}
`
Я попытался установить весь вид (элемент списка) как интерактивный, и это сработало. Теперь флажок не может быть нажат. Но, когда я просматриваю listview, другие элементы в listview также устанавливаются с тем же свойством –