博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android——UI事件的处理机制(基于监听器)
阅读量:4981 次
发布时间:2019-06-12

本文共 3472 字,大约阅读时间需要 11 分钟。

1.普通内部类(常用)

xml

java

public class MainActivity extends AppCompatActivity { @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.gridexlayout); //添加监听器        //监听器 本身是一个接口,需要写实现类        Button bt_reset = (Button)findViewById(R.id.reset);        //第一种 设置监听器的实现类的实例        bt_reset.setOnClickListener(new ResetButtonClickListen());     }     //1.用内部类实现监听器的接口    private class ResetButtonClickListen implements View.OnClickListener    {        public void onClick(View v)        {            Button bt = (Button)v;            String str = bt.getText().toString();            //在内部类里调用外部类的实例:外部类的类名.this            Toast.makeText(MainActivity.this,str+"click",Toast.LENGTH_LONG).show();        }    }}

2.匿名内部类

java

public class MainActivity extends AppCompatActivity {@Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.gridexlayout);        Button bt_reset = (Button)findViewById(R.id.reset);       //第二种 匿名内部类        bt_reset.setOnClickListener(new View.OnClickListener(){            public void onClick(View v)            {                Button bt = (Button)v;                String str = bt.getText().toString();                //在内部类里调用外部类的实例:外部类的类名.this                Toast.makeText(MainActivity.this,str+"click",Toast.LENGTH_LONG).show();            }        });}

3.外部类

java

public class MainActivity extends AppCompatActivity {    //public class MainActivity extends AppCompatActivity implements View.OnClickListener {    //bt_reset.setOnClickListener(this);    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.gridexlayout);              //添加监听器        //监听器 本身是一个接口,需要写实现类        Button bt_reset = (Button)findViewById(R.id.reset);        //第三种 外部类        //bt_reset.setOnClickListener(new WaibuListener());    }}

java2

package com.example.chenshuai.test322;import android.view.View;import android.widget.Button;/** * Created by chenshuai on 2016/3/26. */public class WaibuListener implements View.OnClickListener {    public void onClick(View v)    {        Button bt = (Button)v;        String str = bt.getText().toString();            }}

4.直接绑到标签上

xml

java

public class MainActivity extends AppCompatActivity {    //public class MainActivity extends AppCompatActivity implements View.OnClickListener {    //bt_reset.setOnClickListener(this);    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.gridexlayout);        //添加监听器        //监听器 本身是一个接口,需要写实现类        Button bt_reset = (Button)findViewById(R.id.reset);//传递的View参数 是触发这个事件视图实例(在这里是Button)    public void onclick(View v)    {        Button bt = (Button)v;        String str = bt.getText().toString();        Toast.makeText(this,str+"Button click",Toast.LENGTH_LONG).show();    }}

5.Avtivity直接实现

java

public class MainActivity extends AppCompatActivity implements View.OnClickListener {    bt_reset.setOnClickListener(this);    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.gridexlayout);               //添加监听器        //监听器 本身是一个接口,需要写实现类        Button bt_reset = (Button)findViewById(R.id.reset); } }

 

转载于:https://www.cnblogs.com/Chenshuai7/p/5326982.html

你可能感兴趣的文章
if语句三种格式
查看>>
CentOS 7 单用户模式修改root密码
查看>>
Linux DHCP原理
查看>>
Thread.currentThread()和this的区别——《Java多线程编程核心技术》
查看>>
mysql 5.1 Data 文件夹路径
查看>>
delegate的参数也可泛型【简单源码示例】
查看>>
Mycat SqlServer 技术栈 实现 主从分离
查看>>
为何要学编程?如何学编程?用什么语言最好?有什么好书?
查看>>
剑指Offer的学习笔记(C#篇)-- 反转链表
查看>>
Android精品资源整理2018年3月21日 星期三
查看>>
查询当前库中包含某个字段并且包含自增的表
查看>>
SSH整合报错:No result defined for action and result input
查看>>
1963-带妹子去看电影
查看>>
数据结构和算法之栈排序
查看>>
HBASE的预分区设计
查看>>
大道至简第三章读后感
查看>>
java中JDK、JRE、JVM的关系
查看>>
mybatis面试常见题
查看>>
EXCEL转html
查看>>
对象和XML之间的序列化和反序列化
查看>>