jqp*_*liq 25
您需要在列表上设置itemsCanFocus,如下所示:
mList.setItemsCanFocus(true);
Run Code Online (Sandbox Code Playgroud)
使按钮可单击.然后,您将需要使用自己的适配器,并在getView中返回一个可点击且可聚焦的视图.您还将丢失默认突出显示状态,因此您需要将它们重新放入后台资源.这样做:
view.setClickable(true);
view.setFocusable(true);
view.setBackgroundResource(android.R.drawable.menuitem_background);
Run Code Online (Sandbox Code Playgroud)
返回视图前的视图.
小智 9
每当我看到关于android:focusable和android:clickable属性的帖子时,我总是看到它们同时被设置为相同的值.我认为必须有一个理由,如果它们是两个独立的属性而不是一个.
事实证明,实现理想行为的更好方法是设置
android:focusable="false"
Run Code Online (Sandbox Code Playgroud)
要么
yourButton.setFocusable(false)
Run Code Online (Sandbox Code Playgroud)
就Button在你的View.一旦你这样做,你既可以设置OnClickListener的Button,并在该行一点击就会触发该onListItemClick()方法在你的OnItemClickListener.