Android期末考考前盘点(八):各类控件事件--使用内部类的更合适懵逼的考试学生方式

这个系列----Android的期末应急方案

在上学期的期末收获了一致好评,但是在上学期期末考试中发现部分考生不会,或者说考试题目中会出到一些事件,例如:Button按钮的点击事件、长按事件;EditView文本框的监听事件、ListView点击子项item的点击事件;TextView的点击事件(最常见考试的还是Button以及ListView点击子项item的点击事件)

所以这里需要告诉大家解法,而且是我认为最方便的解法,由于本人英语也不是非常好,所以这个解法你也无需记下英文单词。

首先可以看一下对于Button而言,最常规的如何监听点击事件:

首先有种方式:

设置按钮的onClick属性、为按钮设置监听类、内部类的方式实现、实现OnClickListener接口

对于我在大学上的Android课而言,第二种讲的最少,第四种讲得最多,而为了对于考试这种而言第二种反而是最方便快速的

这是法四 我不推荐:(其实页面中如果有很多点击事件才会使用)

java 复制代码
btnclick.setOnClickListener(this);
public void onClick(View v) {
        Toast.makeText(MainActivity.this, "点击事件", Toast.LENGTH_SHORT).show();
    }
}

这是法二,我推荐的:

java 复制代码
//不好理解就这么写   这是叫内部类写法
btnclick.setOnClickListener(new MyClickListener());
class MyClickListener implements View.OnClickListener {
    @Override
    public void onClick(View v) {
        Toast.makeText(MainActivity.this, "点击事件", Toast.LENGTH_SHORT).show();
    }
}
//省略写法这么写 和上面一样的  而这就是那匿名内部类写法
button.setOnClickListener(new OnclickListener() {
        @Override
        public void onClick(View v) {
            super.onClick(v);
            Toast.makeText(MarqueeActivity.this,"点击事件",Toast.LENGTH_LONG).show();
            }
        });
}

为什么说匿名内部类方法快速、不需要记单词,以下是演示,你只要配置了JDK、SDK,你会发现她会提示,你只需要打一个new,打出部分单词(一般打出On即可提示,更高版本甚至只需要敲个空格就会提示):因为点击是click所以你找到click

而考试中假如遇到了ListView的item子项点击事件,你从来没用过也不用慌,也用了这样的方法,以下是演示:

甚至只要是控件你都可以使用,不管考试中遇到什么控件的监听**(比如按钮长按事件)**

相关推荐
程序员JerrySUN3 分钟前
[特殊字符] 深入理解 Linux 内核进程管理:架构、核心函数与调度机制
java·linux·架构
2302_809798327 分钟前
【JavaWeb】Docker项目部署
java·运维·后端·青少年编程·docker·容器
蓝婷儿12 分钟前
6个月Python学习计划 Day 16 - 面向对象编程(OOP)基础
开发语言·python·学习
渣渣盟28 分钟前
基于Scala实现Flink的三种基本时间窗口操作
开发语言·flink·scala
网安INF30 分钟前
CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
java·web安全·网络安全·flink·漏洞
一叶知秋哈31 分钟前
Java应用Flink CDC监听MySQL数据变动内容输出到控制台
java·mysql·flink
叶子20242233 分钟前
学习使用YOLO的predict函数使用
人工智能·学习·yolo
jackson凌36 分钟前
【Java学习笔记】SringBuffer类(重点)
java·笔记·学习
sclibingqing42 分钟前
SpringBoot项目接口集中测试方法及实现
java·spring boot·后端
程序员JerrySUN1 小时前
全面理解 Linux 内核性能问题:分类、实战与调优策略
java·linux·运维·服务器·单片机