如何在ListView子条目中获取部分组件点击事件?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

如何在ListView子条目中获取部分组件点击事件?

2016-03-11 15:31:05 2376 1

1、我希望在ListView的子条目中获部分组件的点击事件。
这是一个仿微信的项目,我希望当且仅当点击左边按钮、头像、文本框的情况下触发onitemclick方法。错误效果 如下。
screenshot
2、ListView的XML代码:

<ListView android:id="@+id/lv_id" android:layout_width="match_parent"
        android:layout_height="match_parent" android:layout_below="@id/et_search_id"
        android:descendantFocusability="blocksDescendants"/>

子条目的XML代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent" android:layout_height="match_parent">
    <TextView android:id="@+id/first_name_id" android:layout_width="wrap_content"
        android:layout_margin="6dp"    android:clickable="false"
        android:layout_height="wrap_content" android:textSize="@dimen/text_size_xs"/>
    <TextView android:id="@+id/name_id" android:layout_width="match_parent"
        android:layout_height="60dp" android:gravity="center_vertical"
        android:paddingStart="100dp" android:layout_below="@id/first_name_id"
        android:paddingEnd="0dp" android:background="@drawable/d_bg_item"/>
    <com.wuxianedu.wechat.widget.RoundImageView android:id="@+id/head_round_id" 
        android:layout_width="50dp" android:layout_alignTop="@id/name_id"
        android:layout_height="50dp" android:layout_alignBottom="@id/name_id"
        android:contentDescription="@string/load_fail"
        android:src="@drawable/head_nor" android:layout_marginTop="5dp"
        android:layout_marginStart="40dp" android:layout_marginBottom="5dp"/>
    <CheckBox android:id="@+id/cb_id" android:layout_width="30dp" 
        android:layout_height="30dp" android:layout_margin="6dp"
        android:layout_alignTop="@id/name_id" android:layout_alignBottom="@id/name_id"
        android:clickable="false" android:focusable="false"
        android:focusableInTouchMode="false" android:button="@drawable/d_bg_but_jy"/>
</RelativeLayout>
取消 提交回答
全部回答(1)
  • 蛮大人123
    2019-07-17 18:59:23
    checkbox.setOnClickListener(new MyListener());
    imageview.setOnClickListener(new MyListener());
    textview.setOnClickListener(new MyListener());

    自己写一个 MyListener 继承ClickListener... 做统一事件处理。完事。
    不推荐这么做,推荐这三个要接收点击事件的控件外包裹一层View,用View来接收点击事件。这样点击操作失误率会小一些以上手打伪代码.

    0 0
相关问答

1

回答

GraphScope 的功能?

2022-05-12 13:40:43 231浏览量 回答数 1

1

回答

二维数组有几种动态发布内存的方法?

2022-03-29 22:14:08 100浏览量 回答数 1

1

回答

关于Android ImgeView显示图像,点击按钮上一张/下一张的功能出现故障问题?报错

2020-06-10 13:39:51 464浏览量 回答数 1

2

回答

gif.ltd 域名转入问题

2018-11-12 12:51:32 328浏览量 回答数 2

1

回答

请问如何再这个方法里如何获取被点击view的tag

2016-07-27 15:20:34 1452浏览量 回答数 1

1

回答

如何获取被点击的对象

2016-07-12 15:38:29 1270浏览量 回答数 1

1

回答

listView item控件下的按钮事件

2016-06-13 08:45:47 1556浏览量 回答数 1

1

回答

android我自己写了个组合控件RelativeLayout,怎么加入ListView

2016-06-12 08:31:25 1791浏览量 回答数 1

1

回答

ListView 同一时刻只能点击一个item,并防止一个item被快速点击

2016-06-01 10:14:27 1760浏览量 回答数 1

1

回答

Qt怎么实现对ListView中的元素添加右键点击功能?

2016-03-06 15:05:38 2369浏览量 回答数 1
+关注
蛮大人123
我说我不帅他们就打我,还说我虚伪
0
文章
7733
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载