Android进阶-点击事件的响应问题

原创 2015年11月19日 20:33:00

Android进阶-点击事件的响应问题

为什么我们有时在XML文件中明明给一个控件设置了点击事件却不响应?
如何制止ListView的点击事件被抢走?

  • 不同的控件Android系统对于其点击事件的默认时不同的

    • 有些控件默认是不可以点击的例如TextView
    • 如果想要在XML中配置这种控件响应点击事件应配置两个属性
      • clickable = “true”
      • onClick = “eventName”
    • 对于代码中直接通过View.setOnClickListener(),那么即使想TextView这样的控件也可以响应,这是因为:

    Android源码是这样处理的:

    public void setOnClickListener(OnClickListener l){
            if(!isClickable()){
                setClickable(true);
            }
            mOnClickListener = l;
         }
    - 即只要View.setOnClickListener()这样设置了的话,会强行置为true
  • 当控件的点击事件覆盖ListView的点击事件是,应把控件的这两属性设置一下

    • Clickable = “false”, focusable = “false”
  • 对于ListView这种控件的使用

    • 我们应该把ListView要展现的界面内容完全封装,这样,当我们想要改变界面数据显示是,只需改变
    • 数据即可,而不需要去修改UI代码
  • CheckBox的选择器

    • 正常情况下,给一个控件设置选择器是使用 background = “@drawable/selector”
    • 但是CheckBox的选择器有些特殊他是 button = “@drawable/selector”
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

我的Android进阶之旅------>Android中ListView中嵌套(ListView)控件时item的点击事件不起作的问题解决方法

开发中常常需要自己定义Listview,去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了,可能会发生点击每一个item的时候没有反应,无法获取的焦点。 如果你的自定义Li...

我的Android进阶之旅------>Android中通过adb shell input来模拟滑动、按键、点击事件

今天在维护公司的一个小项目的时候,发现按公司手机的某个物理按键,激活相应的Service后,会在屏幕上模拟的点击了屏幕的某个坐标点。好家伙,原来是之前该项目的版本是按这个物理按键后,会弹出一个对话框,...
  • j20lin
  • j20lin
  • 2017年06月08日 09:36
  • 332

我的Android进阶之旅------>Android中通过adb shell input来模拟滑动、按键、点击事件

今天在维护公司的一个小项目的时候,发现按公司手机的某个物理按键,激活相应的Service后,会在屏幕上模拟的点击了屏幕的某个坐标点。好家伙,原来是之前该项目的版本是按这个物理按键后,会弹出一个对话框,...

前端进阶之路:点击事件绑定

前端进阶之路:点击事件绑定 引言 前端之所以被称为前端,是因为它是整个 Web 技术栈中距离用户最近、直接与用户进行交互的一环。而网页界面与用户的交互通常是通过各种事件来达成的;在各种事件...

从零开始学_JavaScript_系列(十一)——dojo(4)(GRID表格进阶:格式化、style、数据获取、多重排序、点击事件)

如果没有阅读过gridx表格的基本运用教程,建议先阅读这篇(4天点击量已经接近5k): http://blog.csdn.net/qq20004604/article/details/51170919...

Android ListView item 点击事件失效问题的解决

关于ListView点击无效,item无法相应点击事件的问题,网上有很多, 大致可分为俩种情况, 一种是 item中存在 ImageButton 等可以点击的组件,这会抢先获得ListView的焦点....

[Android]在ListView嵌套GridView中出现的点击事件处理以及gridview显示不全的问题

写这篇博文也是出于偶然看到自己很久以前写的一堆“烂码”,目的是为了实现一个ListView中能够嵌入GridView的功能,为了展示图文的一个Item,这是一个很普通的功能,但在那时候什么都不懂的我还...

Android 在ListView嵌套GridView中出现的点击事件冲突的处理以及gridview显示不全的问题

写这篇博文也是出于偶然看到自己很久以前写的一堆“烂码”,目的是为了实现一个ListView中能够嵌入GridView的功能,为了展示图文的一个Item,这是一个很普通的功能,但在那时候什么都不懂的我还...

点击事件的问题

  • 2016年02月26日 16:13
  • 1.68MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android进阶-点击事件的响应问题
举报原因:
原因补充:

(最多只允许输入30个字)