package com.bdqn.button;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.app.Activity;import android.content.Intent;/** *  * @author TXF *  * Button点击事件的5种写法 *  */public class MainActivity extends Activity implements OnClickListener {private Button mbtn1, mbtn2, mbtn3;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 加载主布局文件setContentView(R.layout.activity_main);// 第一种写法(定义内部类实现Button的点击事件)mbtn1 = (Button) findViewById(R.id.btn1);mbtn1.setOnClickListener(new MyListener());// 第二种写法(定义匿名内部类实现Button的点击事件)mbtn2 = (Button) findViewById(R.id.btn2);mbtn2.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {startActivity();}});// 第三种写法:让Activity实现点击事件的接口(适用于多个Button)// 1.让MainActivity实现OnClickListener接口;// 2.复写onClick方法;// 3.在onClick方法里面用Switch,case来判断不同Button的id从而响应不同的点击事件mbtn3 = (Button) findViewById(R.id.btn3);mbtn3.setOnClickListener(this);}// 第四种写法:在布局文件中绑定不同名的点击方法(就是 android:onClick="click04",后面的属性值不同)// 不需要findViewById,也不需要setOnClickListener,只需要写多个方法就行public void click04(View view) {startActivity();}/* * public void click01(View view) { } * public void click02(View view) { } * .... */// 第一种:定义内部类实现Button的点击事件private class MyListener implements OnClickListener {@Overridepublic void onClick(View view) {startActivity();}}// 这是第三种方法复写的onClick方法@Overridepublic void onClick(View view) {startActivity();}// 第五种:在布局文件中定义同名的点击方法(就是 android:onClick="click",后面的属性值都一样,都为click)// 通过switch,case来判断不同Button的Id,这种方法最简单。以后开发遇到多个Button的时候用这种方法比较简单public void click(View view) {switch (view.getId()) {case R.id.btn5:startActivity();break;// ...default:break;}}// 开启第二个界面的方法private void startActivity() {startActivity(new Intent(MainActivity.this, OtherActivity.class));}}

xml布局

    
效果图

Android UI控件详解-Button(按钮)点击事件的5种写法_第1张图片Android UI控件详解-Button(按钮)点击事件的5种写法_第2张图片

更多相关文章

  1. android 模拟滑动事件
  2. android APP响应H5页面的点击事件(JS交互)
  3. android edittext编辑框光标改变事件
  4. android的service如何接收触摸事件。
  5. android 自定义TextView中Html超链接点击事件详解
  6. android中Touch事件处理
  7. Android UI系列:关于按钮点击事件
  8. android中ListView控件&&onItemClick事件中获取listView传递的数

随机推荐

  1. Android(安卓)PinyinIME 源码笔记 -- 0.
  2. 隐藏菜单APP显示图标
  3. android init.rc增加一个自定义的service
  4. Installation error: INSTALL_FAILED_INS
  5. Android(安卓)Studio打包设置分支
  6. android网络图片的下载
  7. android前台渲染图片
  8. Android图形报表之AchartEngine(附开发包
  9. Android中循环的几种方式
  10. Android平台mass storage相关代码