zoukankan      html  css  js  c++  java
  • 安卓开发学习日记 DAY5——监听事件onClick的实现方法

    今天主要学习了监听事件的是实现方法,就是说,做了某些动作后,怎么监听这个动作并作出相应反应。

    方法主要有三种:

    1.匿名内部类的方法

    2.独立类的方法

    3.类似实现接口的方法

    以下分别分析:

    1.匿名内部类的方法

    就是使用innerClass的方式创建监听事件

    步骤如下:

      1)创建一个button,在xml中拖入一个button即可

      2)在源程序中对button进行初始化

      

       就是,先创建一个button btn,然后使用findViewById找到你之前的那个button进行关联,此时请注意findViewById返回值为View,所以此处我们将他转换为Button(Button为View子类)

      3)通过setOnClickListener设置监听

    2.通过独立类的方式

      1)创建一个button,在xml中拖入一个button即可

      2)在源程序中对button进行初始化

      3)创建一个外部类,implement OnClickListener的接口

      

      这里我对这个类做的统一操作是将字体颜色转化成白色

      4)像实现匿名类那样实现独立类

      

      这里需要注意,在OnClick方法中有一句Super.onClick(arg0);

      这一句的意思是调用父类的onClick方法,而这里的父类就是MyOnClickListener,所以在执行过程中,会先调用父类的方法将文本颜色变为白色,然后改编文本内容

      所以这里,我们就可以发现独立类的优势,他可以将共同的操作写入父类,特殊的操作在调用时编写,减少代码量

    3.接口方式

      1)创建一个button,在xml中拖入一个button即可

      2)在源程序中对button进行初始化

      3)对主类implements OnClickListener

      

      此时会自动生成一个用以实现接口的方法onClick

      4)类似,使用this指针来调用这个方法

      btn.setOnClickListener(this);

      相比之下,这种方法最简单,但是当你要实现的接口很多时,主类名字太长,太丑

    以上

  • 相关阅读:
    Delphi调用DLL中的接口(转)(一个FreeLibrary时 报错的解决方案)
    支持向量的DES加密单元
    斐波那契两种算法(递归,迭代规划)
    format 函数详解
    RTTI 简介(转)
    delphi 反调试代码汇总
    FastReport (4.13)中文菜单显示不全或者乱码解决方法(2010 XE2 )转
    XE可用MD5单元
    Delphi XE3 FireMonkey中文输入法Bug修正 (转)
    4个FPGA工程师面试题目
  • 原文地址:https://www.cnblogs.com/shuhaoz/p/4394142.html
Copyright © 2011-2022 走看看