android - 自定义列表视图项目选择

时间:2015-01-22 12:35:49

标签: android android-layout

我有一个列表视图,每行都有一个带有textview和相邻imageview的线性布局。 我已经能够使用我想要的功能实现setOnItemClickListener(),当单击一行时会触发,但我希望在单击行中的imageview时调用它。有什么想法吗?

3 个答案:

答案 0 :(得分:2)

您可以在自定义生成的视图项目上设置点击侦听器

将此代码放入自定义xml imageview文件中。

android:focusable="false"
android:descendantFocusability="blocksDescendants"

并在imageview上设置onClicklistner

您还可以阅读: Android : How to set onClick event for Button in List item of ListView

答案 1 :(得分:0)

如果要添加listview行项目单击并单击行视图中的图像视图事件,请在行布局的根视图中使用android:descendantFocusability=“blocksDescendants”

如果你使用BaseAdapter ** 要应用在BaseAdapter的getView方法中创建的imageview实例的click事件

答案 2 :(得分:0)

对于这种情况,您可以将click侦听器添加到在BaseAdapter的getView方法中创建的imageview实例。如果您关注HolderPattern,则下面是例外代码

   holder.image.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

        }
    });

您还必须在列表行的父布局中添加以下行:

android:descendantFocusability=“blocksDescendants”