在TextView中禁用焦点

时间:2010-07-28 12:02:56

标签: java android textview android-listview

在Android应用程序中,我有一个ListActivity。创建它后,我有一个广播接收器,必须禁用列表中的一些项目。所以我有一堆代码可以用这个:

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

它的工作方式是将禁用视图的颜色更改为灰色。但我需要避免这个项目可以点击。所以我试着打电话给

child.setFocusable(false);

child.setClickable(false);

但在两种情况下,按下禁用选项后都会调用onListItemClick。

如何在单击这些文本视图时避免调用onListItemClick方法?

感谢。

1 个答案:

答案 0 :(得分:1)

禁用视图不会对onListItemClick事件产生任何影响。

必须通过用于填充列表的适配器禁用子项。

请参阅http://developer.android.com/reference/android/widget/ListAdapter.html#isEnabled(int)

需要覆盖此方法,以便为您不希望可点击的每个项目返回false。您还应该向适配器添加方法,例如setEnabled(int position, boolean enabled)