在 Android 应用程序中,我有一个 ListActivity。创建它后,我有一个广播接收器,它必须禁用列表中的某些项目。所以我有一段像这样的代码:
View child = getListView().getChildAt(i);
child.setEnabled(false);
它的工作原理是将禁用 View 的颜色更改为灰色。但我需要避免可以单击此项目。所以我尝试打电话
child.setFocusable(false);
或
child.setClickable(false);
但在这两种情况下, onListItemClick 都会在按下禁用选项后调用。
如何避免单击这些 TextView 时调用 onListItemClick 方法?
谢谢。
最佳答案
禁用 View 对于 onListItemClick
事件没有任何作用。
您用来填充列表的适配器必须禁用该子项。
参见http://developer.android.com/reference/android/widget/ListAdapter.html#isEnabled(int)
需要重写此方法,以便为您不希望可点击的每个项目返回 false。您还应该向适配器添加一个方法,例如 setEnabled(intposition, booleanenabled)
关于java - 禁用 TextView 中的焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3352601/