Отключение фокуса в TextView - PullRequest
0 голосов
/ 28 июля 2010

В приложении для Android у меня есть ListActivity. После его создания у меня есть приемник вещания, который должен отключить некоторые элементы в списке. Итак, у меня есть кусок кода, как этот:

View child = getListView().getChildAt(i);
child.setEnabled(false);

Работает так, как изменяет цвет отключенных видов на серый. Но мне нужно избегать, чтобы по этим пунктам можно было нажимать. Поэтому я попытался позвонить

child.setFocusable(false);

или

child.setClickable(false);

но в обоих случаях onListItemClick вызывается после нажатия на отключенную опцию.

Как можно избежать вызова метода onListItemClick при щелчке по этим текстовым представлениям?

Спасибо.

1 Ответ

1 голос
/ 28 июля 2010

Отключение представлений никак не влияет на событие onListItemClick.

Ребенок должен быть отключен адаптером, который вы используете для заполнения списка.

См. http://developer.android.com/reference/android/widget/ListAdapter.html#isEnabled(int)

Этот метод должен быть переопределен, чтобы возвращать false для каждого элемента, который вы не хотите нажимать Вы также должны добавить метод к вашему адаптеру, например setEnabled(int position, boolean enabled)

...