Android中的点击事件(详解)


Android(3)点击事件的处理和应用

1.在学习点击事件之前呢.我们学习安卓控件中的Textview,Button,redioButton,checkBox,等相关控件是使用,在安卓中呢,TextView是许多的App开发的必备控件,无论是大的项目还是小的项目都会有TextView的出现.接下来我们就从它开始讲起,来简单介绍这几个控件的是用方法.

    TextView的使用方法:在所有的控件中都有共有的方法,那就是宽度和高度,layout_weight=""和layout_height=""当然这两个属性是不可少的,在每个控件只能都是需要设置的,但特殊情况除外啊,这个属性大家可以根据自己的要求合理使用啊.

    TextView中呢,还有一个属性,那就是singleLine=""他是确定你所显示 的文本是单行的.这个属性比较简单,可以自己打出来看看效果啊.在这里就不多说了啊.

     android:text="@string/hello"//显示文本信息.
          android:textColor="#ff00"//为文字追加颜色
          android:singleLine="true"//是否是单行显示
          android:ellipsize="marquee"//如果是一段很长的文本,内容长度超出了这个View的宽度,我们想要一行显示,且超出部分在末端以省略号'……'表示,但实际上没有这样工作,而是文本超出的多余的部分被截断了

    focusable:获取焦点(不经常使用)

    focusableInTouchMode:获取触摸模式下的焦点
           marqueeRepeatLimit:滚动次数,里面有个参数marquee_forever代表永远滚动
    lines:指的是最小和最大行都是指定的值,如果同时指定了 minlines, 在范围还没有超过minlines 的情况下,以 minlines为准,如果文本内容在      minlines和 lines 之间的行数就显示完毕,那么有多少行就多少行,但是 lines 一定会影响 文本实际的显示行数,但是整个 textview 的行数会被      minlines 影响
    imageview: src:图片有多大,显示出来的就
2点击事件的监听和处理.

  2.1在 XML 文件中给需要设置点击事件的控件添加 onclick 属性,属性的值是点击该控件的时候执行的方法名
          方法的格式: public void 方法名( View 类型的参数)
     2.2:通过setOnClickListener方法传递一个View.OnClickListener的对象;由于View.OnClickListener是一个接口.

    所以它有多种得到的方式:1 直接 new 一个匿名内部类 2:当前类实现View.OnClickListener这个接口,然后 setonclicklistener 的时候传递 this     进去,因为 this 就是View.OnClickListener的一个子类

  2.3:我们声明一个View.OnClickListener的对象,然后赋值一个 new View.OnClickListener 重写内部的方法  ,然后在setonclicklistener的时候      把这个对象穿进去不管是自写方法还是用 setonclicklistener 方法上面都有个 View 类型的参数,这个参数代表是当前点击的控件, 如果多个控      件使用同一个点击事件,那么可以通过参数的 view.getid 的方法拿到控件的 id, 因为 id 是唯一的,所以可以通过 switch id 的方式来区分到底      点击的是哪个控件,然后再做具体操作
  2.4radiobutton 点击事件:理论上不应该给他设置点击事件,因为它内部默认处理了一个点击事件,它应该监听的是状态变化,同时应该与 radiogroup      配套使用,因为它常用在多个选项里面的单选
    当radiobutton 在 radiogroup中的时候,应该用 radiogroup 的 checkchange 监听,然后根据方法中的 checkeid来区分当前被选中的是哪个       radiobutton, 而不是去给每个 radiobutton 设置状态变化的监听

关注公众号:

 

 




        问题:  如果是 includ 进来的 xml 文件,内部控件的 id 是一样的,加入 includ 多次,那么会有几个 id 一样的控件,如果设置了点击事件,如何区分?

    这个问题我们下次接着为大家介绍,敬请关注,欢迎来信留言.


   

    

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM