上下文:我想要一个不能获得焦点的ListView(例如,当用户触摸它时不会突出显示行).然而,每个行小部件都有自己的OnClickListener.这是我在布局xml中指定的内容:
android:choiceMode="none" android:focusableInTouchMode="false" android:focusable="false"
ListView仍然表现完全相同.请有人解释一下
三者之间的相互关系
创建无法获得焦点的ListView的正确方法是什么?
TIA.
虽然您在xml中指定了,但您也可以尝试在代码中指定.虽然我不确定您是否可以将列表设置为不可聚焦,但仍然可以将列表设置为可滚动且可点击.
在你的setContentView之后......
myListView.setFocusableInTouchMode(false);
您也可以尝试从视图继承,然后在过渡期间添加一些调试代码,以帮助您找到列表实际具有焦点的时间.
myListView.setOnFocusChangeListener(new OnFocusChangeListener(){ public void onFocusChange(View v, boolean hasFocus) { v.setBackgroundColor(hasFocus ? Color.GRAY : Color.BLACK); } }); myListView.setClickable(true);