安卓开发中给按钮(button)设置监听器的4种方法
2015-09-14 15:02
1321 查看
在UI组件中定义一个Button时我们往往会给按钮设置一个监听器,以此在点击按钮的时候,做出相应的响应动作。
如定义一个按钮:
第一种方法:
在Xml文件中通过onClick="方法名",如上面代码红色部分。
在Activity中书写方法:public void 方法名(View view){……},无需实现监听器借口就可以调用该方法去响应。
第二种方法:采用匿名内部类的方式:
/**
* 定义一个按钮
*/
private Button button;
//获取button
this.button = (Button) findViewById(R.id.button1);
button.setOnClickListener(newOnClickListener(){
publicvoid onClick(View view){
…………
}
});
第三种方法:采用内部类的方式
private final class MyOnClickListenerimplements OnClickListener{
publicvoid onClick(View v) {
………………
}
}
button.setOnClickListener(newMyOnClickListener());
第四中方法:让当前Activity实现OnClickListener接口
public classMainActivity extends Activity implements OnClickListener {
public void onClick(View v) {
……………………
}
}
button.setOnClickListener(this);
如定义一个按钮:
<LinearLayout android:layout_width="match_parent" android:layout_height="80dp"> <Button android:id="@+id/Login_button" android:layout_width="230dp" android:layout_height="50dp" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginTop="20dp" android:layout_marginLeft="45dp" android:background="@color/cornflowerblue" android:<span style="color:#FF0000;">onClick="Login"</span> android:text="登 录" /> </LinearLayout>
第一种方法:
在Xml文件中通过onClick="方法名",如上面代码红色部分。
在Activity中书写方法:public void 方法名(View view){……},无需实现监听器借口就可以调用该方法去响应。
第二种方法:采用匿名内部类的方式:
/**
* 定义一个按钮
*/
private Button button;
//获取button
this.button = (Button) findViewById(R.id.button1);
button.setOnClickListener(newOnClickListener(){
publicvoid onClick(View view){
…………
}
});
第三种方法:采用内部类的方式
private final class MyOnClickListenerimplements OnClickListener{
publicvoid onClick(View v) {
………………
}
}
button.setOnClickListener(newMyOnClickListener());
第四中方法:让当前Activity实现OnClickListener接口
public classMainActivity extends Activity implements OnClickListener {
public void onClick(View v) {
……………………
}
}
button.setOnClickListener(this);
相关文章推荐
- Drupal8 调试Twig模板
- 【java】0到n中生成m个等概率随机数
- 打造自己的Vim的IDE
- Asp.Net中后台弹出Layer浮动框以及传值
- CentOS安装oracle11gR2笔记
- Android --设置Toast消失时间
- Mysql 压力测试工具sysbench
- Lucene--Analyzer
- Linux系统下修改网络配置
- iOS 基础复习
- JS原生编写飞机大战小蜜蜂游戏
- nginx 服务器配置404 页面
- 【marks】web前端资源
- 【BootStrap】--具有增删改查功能的表格Demo
- 剑指offer:从尾到头打印链表
- 转 SDL2.0在mfc窗口中显示yuv的一种方法
- C++Primer第五版 4.1.2节练习
- ASP.NET MVC5网站开发项目框架(二)
- JS+DIV+CSS实现的经典标签切换效果代码
- jQuery 语法