Android 实现监听的四种方法详解实例代码

直接上代码,大家可以参考下

(1)自身类作为事件监听器

package cn.edu.gdmec.s07150745.work5; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity implements View.OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btn1 = (Button) findViewById(R.id.btn1); btn1.setText("单击"); btn1.setOnClickListener(this); } @Override public void onClick(View v) { Toast.makeText(this,"已单击我...",Toast.LENGTH_SHORT).show(); System.out.println("已单击我..."); } }

(2)外部类作为事件监听器:

package cn.edu.gdmec.s07150745.work5; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; public class Act2 extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_act2); Button btn2 = (Button) findViewById(R.id.btn2); btn2.setText("单击"); btn2.setOnClickListener(new OuterClass("已单击我...")); } } class OuterClass implements View.OnClickListener{ private String str="已单击我...."; public OuterClass(String str){ super(); this.str=str; } @Override public void onClick(View v) { System.out.println(str); } }

(3)内部类作为事件监听器:

package cn.edu.gdmec.s07150745.work5; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class Act3 extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_act3); Button btn3 = (Button) findViewById(R.id.btn3); btn3.setText("单击"); btn3.setOnClickListener(new OuterClass()); } class OuterClass implements View.OnClickListener{ @Override public void onClick(View v) { Toast.makeText(Act3.this,"已单击我...",Toast.LENGTH_SHORT).show(); System.out.println("已单击我..."); } } }

(4)匿名类作为事件监听器:

package cn.edu.gdmec.s07150745.work5; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class Act4 extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_act4); Button btn4 = (Button) findViewById(R.id.btn4); btn4.setText("单击"); btn4.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(Act4.this,"已单击我...",Toast.LENGTH_SHORT).show(); System.out.println("已单击我..."); } }); } }

以上四种方法之后,在xml文件中给每一个事件即activity里面定义多一个android label即可。不忘在每个activity里面添加如下蓝色的一段代码哦。

<activity android:name=".MainActivity" android:label="1"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

时间: 2024-11-03 21:55:47

Android 实现监听的四种方法详解实例代码的相关文章

Android ListView监听滑动事件的方法(详解)

ListView的主要有两种滑动事件监听方法,OnTouchListener和OnScrollListener 1.OnTouchListener OnTouchListener方法来自View中的监听事件,可以在监听三个Action事件发生时通过MotionEvent的getX()方法或getY()方法获取到当前触摸的坐标值,来对用户的滑动方向进行判断,并可在不同的Action状态中做出相应的处理 mListView.setOnTouchListener(new View.OnTouchLis

Java添加事件监听的四种方法代码实例_java

Java添加事件的几种方式(转载了codebrother的文章,做了稍微的改动): /** * Java事件监听处理--自身类实现ActionListener接口,作为事件监听器 * * @author codebrother */ class EventListener1 extends JFrame implements ActionListener { private JButton btBlue, btDialog; public EventListener1() { setTitle(

Android更新UI的四种方法详解_Android

前言 相信每位Android开发者们都知道更新UI只能在主线程中进行,若是在子线程执行任务后需要更新UI,则需要借助handler跳转到主线程中.以下介绍几种操作UI的方法. 一.使用Handler的handleMessage() Handler的构造 public Handler() { this(null, false); } public Handler(Callback callback, boolean async) { if (FIND_POTENTIAL_LEAKS) { fina

PHP页面间参数传递的四种方法详解_php技巧

我们定义page01.php和page02.php两个php文件,将page01中的内容想办法传递到page02,然后供我们继续使用.--------------------------------------------------------------------------------第一种:使用客户端浏览器的cookie.cookie很容易理解,就是一个临时文件,可以把它看成一个储藏室,浏览器在浏览的过程中记录一些信息,就暂时存放在这里.在page01中设置一个cookie. 复制代码

PHP异步执行实现的四种方法详解

PHP异步执行的常用方式: 1.AJAX1. 最简单的办法,就是在返回给客户端的HTML代码中,嵌入AJAX调用,或者,嵌入一个img标签,src指向要执行的耗时脚本. 这种方法最简单,也最快.服务器端不用做任何的调用. 但是缺点是,一般来说Ajax都应该在onLoad以后触发,也就是说,用户点开页面后,就关闭,那就不会触发我们的后台脚本了. 而使用img标签的话,这种方式不能称为严格意义上的异步执行.用户浏览器会长时间等待php脚本的执行完成,也就是用户浏览器的状态栏一直显示还在load. 当

批量杀死MySQL连接的四种方法详解_Mysql

方法一 通过information_schema.processlist表中的连接信息生成需要处理掉的MySQL连接的语句临时文件,然后执行临时文件中生成的指令. 复制代码 代码如下: mysql> select concat('KILL ',id,';') from information_schema.processlist where user='root'; +------------------------+ | concat('KILL ',id,';') | +----------

Java解析XML的四种方法详解_java

XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便.对于XML本身的语法知识与技术细节,需要阅读相关的技术文献,这里面包括的内容有DOM(Document Object Model),DTD(Document Type Definition),SAX(Simple API for XML),XSD(Xml Schema Definition),XSLT(Extensible Stylesheet Language Transform

使用Java构造和解析Json数据的两种方法(详解二)_java

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包. 在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Json数据的方法

批量杀死MySQL连接的几种方法详解

批量杀死MySQL连接的几种方法详解 官网:https://dev.mysql.com/doc/refman/5.6/en/kill.html 13.7.6.4 KILL Syntax Press CTRL+C to copy KILL [CONNECTION | QUERY] processlist_id Each connection to mysqld runs in a separate thread. You can kill a thread with the KILL proces