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子项点击事件,你从来没用过也不用慌,也用了这样的方法,以下是演示:

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

相关推荐
文丑颜不良啊9 分钟前
LeetCode2741~2760题目解析
java·leetcode
曦樂~9 分钟前
【Web Development】03JavaScript 基础和事件
开发语言·前端·javascript
郝学胜-神的一滴13 分钟前
LangChain Skill 实现(渐进披露 On-Demand Skill,LangChain 官方 Deep Agent Skill 模式)
开发语言·python·langchain·numpy
程序员Query1 小时前
day01-认识Go语言 + golang环境的安装
开发语言·后端·golang
金銀銅鐵10 小时前
带您看懂字节码指令(二):空循环里有什么
java·后端·ai编程
§ꦿCFོ༉10 小时前
嵌入式八股文—C语言入门学习(四)
c语言·开发语言·学习
传奇开心果编程11 小时前
【Flutter踩坑排雷】第25课:ScrollController 误用坑|跳转失效、监听泄漏与“控制器未附加”
android·flutter·ios·移动开发·跨平台·dart·声明式ui
投图匠11 小时前
十种不同风格的 CTP接口 框架
开发语言·python
吴名氏.11 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
.痞老板.12 小时前
java ee--多线程(进阶)
java·java-ee