Android中加载事件的方式
Android中加载事件的方式
- 通过内部类的方式实现
- 通过外部类的方式实现
- 通过属性的方式实现
- 通过自身实现接口的方式实现
通过内部类的方式实现 Demo
btn_Login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//要处理的业务
}
});
通过外部类的方式实现
//调用事件代码
btn_Login.setOnClickListener((View.OnClickListener) new Login());
//外部类
public class Login implements SearchManager.OnCancelListener {
@Override
public void onCancel() {
//要处理的业务
}
}
通过属性的方式实现
<!--布局文件的代码主要是 onClick属性-->
<Button
android:id="@+id/btnLogin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="Login"
android:textAllCaps="false"
android:onClick="login"
/>
//在Activity中写一个 与 绑定的属性名称相同的方法 View 参数不能少
public void login (View v) {
//检测账号密码是否为空
if (et_UserName.getText().length()==0|| et_Password.getText().length()==0){
Toast.makeText(this,"Username or password cannot is null!",Toast.LENGTH_SHORT).show();
return;
}
}
通过自身实现接口的方式实现
public class MainActivity extends AppCompatActivity implements SearchManager.OnCancelListener {
@Override
public void onCancel() {
//要处理的业务
}
EditText et_UserName;
EditText et_Password;
Button btn_Login;
CheckBox cb_Rember;
public final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_UserName = (EditText) findViewById(R.id.et_UserName);
et_Password = (EditText) findViewById(R.id.et_Password);
btn_Login = (Button) findViewById(R.id.btnLogin);
cb_Rember = (CheckBox) findViewById(R.id.cbRemember);
this.btn_Login.setOnClickListener((View.OnClickListener) this);
}
}
Android中加载事件的方式的更多相关文章
- Android中加载位图的方法
Android中加载位图的关键的代码: AssetManager assets =context.getAssets(); //用一个AssetManager 对象来从应用程序包的已编译资源中为工程加 ...
- Android 中加载几百张图片做帧动画防止 OOM 的解决方案
Android 中加载几百张图片做帧动画防止 OOM 的解决方案 最近,项目中有个需求:就是要做一个帧动画,按理说这个是很简单的!但是我能说这个帧动画拥有几百张图片吗?...... 填坑一 ---帧动 ...
- Spring中加载配置文件的方式
原文:http://blog.csdn.net/snowjlz/article/details/8158560 Spring 中加载XML配置文件的方式,好像有3种, XML是最常见的Spring 应 ...
- EF中加载实体的方式
EF中的查询执行时机:1. foreach进行枚举2. ToArray.ToList.ToDictionary3. Linq的一些操作,如First.Any4. DbSet上的Load操作.DbEnt ...
- android中加载的html获取的宽高不正确
wap页面使用 js库是zepto,按照惯例在$(function(){})中,来获取当前可视区的宽高,但得到的宽高却与预想的相差十万八千里. 原本android手机的浏览器设定的宽高基本是360*6 ...
- Android 中加载本地Html 跨域问题,http协议允许加载
一.需求: 后台加载HTML的包时间太长,太卡,让把所有的HTML包放到前台:使用的是file://协议,有些内容和样式加载不出来,H5那边说需要用http://协议来加载: 二.处理过程: 安卓最简 ...
- UE4中资源加载资源的方式
在UNITY中,我们加载资源一般是通过Resources.Load(path).即可完成.该方法返回的是Object类型.如果你想要的是材质或者贴图等等,只要价格类型转换的关键字就可以了例如 as M ...
- Android图片加载库:最全面的Picasso讲解
前言 上文已经对当今 Android主流的图片加载库 进行了全面介绍 & 对比 如果你还没阅读,我建议你先移步这里阅读 今天我们来学习其中一个Android主流的图片加载库的使用 - Pica ...
- Android动态加载so文件
在Android中调用动态库文件(*.so)都是通过jni的方式,而且往往在apk或jar包中调用so文件时,都要将对应so文件打包进apk或jar包,工程目录下图: 以上方式的存在的问题: 1.缺少 ...
随机推荐
- linux读写锁
一.概述 读写锁与互斥量的功能类似,对临界区的共享资源进行保护!互斥量一次只让一个线程进入临界区, ...
- ELK应用之二:Kibana显示Nginx中来访客户端IP地域分布
在Kibana的visualize中显示Nginx访问日志客户端IP地域分布图 官网介绍: https://www.elastic.co/guide/en/beats/packetbeat/curre ...
- P2868 [USACO07DEC]观光奶牛Sightseeing Cows
P2868 [USACO07DEC]观光奶牛Sightseeing Cows [](https://www.cnblogs.com/images/cnblogs_com/Tony-Double-Sky ...
- 001. MyBatis+SpringMVC+Spring[重置版]
说在前面的话 三阶段的课程知识点和细节很多,请假应该杜绝! 课后需抓紧时间复习,提高代码质量和速度! 课程周期和学习课程顺序为:[正常情况下] MyBatis 持久层框架 [2周] SpringMVC ...
- centos安装lrzsz
yum -y install lrzsz 使用rz打开上传框
- TED_Topic7:How we unearthed the spinosaurus
By Nizar Ibrahim A 50-foot-long carnivore who hunted its prey in rivers 97 million years ago, the sp ...
- 加速计 & CoreMotion
CHENYILONG Blog 加速计 & CoreMotion 加速计 & CoreMotion 技术博客http://www.cnblogs.com/ChenYilong/ 新浪微 ...
- 蓝桥杯 问题 1110: 2^k进制数 (排列组合+高精度巧妙处理)
题目链接 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换为2 ...
- python3之模块random随机数
1.random.random() 随机生成一个大于0小于1的随机数. print(random.random()) 0.03064765450719098 2.random.uniform(a,b) ...
- phantomhs获取网页的高度
function heheda() { window.setTimeout(function () { console.log("---------------------Capture O ...