• Android 手机卫士--事件传递&响应规则


    问题的提出:

    本文地址:http://www.cnblogs.com/wuyudong/p/5911187.html ,转载请注明源地址。

    前面的文章实现了点击SettingItemView条目的时候,相应的TextView文字改变,但是选择自定义控件SettingItemView中的checkbox的时候,则相应的TextView文字没有改变

    这里需要了解事件传递过程

    SettingActivity对应布局文件的跟布局获取点击事件,此事件传递给SettingItemView

    1.点击在SettingItemView非CheckBox区域,事件就由SettingItemView去做响应
    2.点击在SettingItemView中CheckBox区域,事件就由SettingItemView传递给CheckBox,由CheckBox去做响应

    CheckBox响应当前的点击事件,则SettingItemView就不能再去响应此事件,不能调用onClick方法,去改变状态

    解决此问题的方案为:不让checkBox响应点击事件即可

            <!--
              android:clickable="false"
                android:focusable="false"
                android:focusableInTouchMode="false"
                让当前的 CheckBox不能被点击,即不能响应事件   -->
    
            <CheckBox
                android:id="@+id/cb_box"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:clickable="false"
                android:focusable="false"
                android:focusableInTouchMode="false" />
  • 相关阅读:
    POJ 2255. Tree Recovery
    Ural 1011. Conductors
    Ural 1010. Discrete Function
    算法导论学习 之 解递归式
    算法导论学习 之 渐进符号
    kubernetes-集群构建
    kubernetes-集群备份和恢复
    kubernetes-概念
    Kubernetes-常用命令
    kubernetes-单机实验(入门)
  • 原文地址:https://www.cnblogs.com/wuyudong/p/5911187.html
Copyright © 2020-2023  润新知