10

我的问题来自 ListView。如果没有按钮,ListView 的.setOnItemClickListener可以正常工作。(开始一个活动)

在我将按钮添加到 ListView 的项目中时,按钮是可点击的,但这些项目是不可点击的......

我尝试使用myListView.setItemCanFocus(true);,但它不起作用...

4

4 回答 4

37

从 Button 中删除 focusable 属性可以解决这个问题。您可以在布局 xml 文件或 java 源代码中执行此操作。

还有一个提示,如果您使用 ImageButton 而不是 Button,则需要在您的 java 代码中设置 setFocusable 才能使其工作,因为 ImageButton 的构造函数会在从 xml 文件膨胀后启用此属性。

于 2012-10-24T06:26:33.543 回答
2

原因是您的列表视图中的按钮吸收了 onItemClickEvent。

一个很好解释的教程是here

于 2012-02-14T09:46:58.347 回答
2

对列表视图中的可点击按钮使用 onTouch() 回调可能会更好。然后,您应该能够单击列表项和按钮。有关某些代码,请参阅此问题(无需 touchDelegate)。

于 2011-06-08T07:28:03.427 回答
0

您可以在 ListView 的 .setOnItemClickListener 中使用它

view.findViewById(R.id.btn_id).setOnClickListener(new View.OnClickListener(){//your method})
于 2011-06-08T07:02:27.880 回答