一、使用匿名内部类实现 onClickListener接口,通用;

二、让MainActivity实现onClickListener接口,这种方法适合于有多个组件时,这样用会更加的方便;

三、在XML文件中的相应组件中定义onClick方法,自定义的方法;

实现的源码:

package com.example.clickbutton;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;//此处为了用第二种方法所以在开始的Activity中实现了Onclicklistener接口;public class MainActivity extends Activity implements OnClickListener{private Button button,button2,button3,button4;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button=(Button)findViewById(R.id.button1);button2=(Button)findViewById(R.id.button2);button3=(Button)findViewById(R.id.button3);button4=(Button)findViewById(R.id.button4);button2.setOnClickListener(this);//第二种方式的buttonbutton3.setOnClickListener(this);//第二种方式的button//第一种:使用匿名内部类:button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubToast.makeText(MainActivity.this , "这是第一个button", 1).show();}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}//第二种:让MainActivity implements OnClickListener 接口,这样就可以如下写了:public void onClick(View v) {// TODO Auto-generated method stubswitch (v.getId()) {case R.id.button2:Toast.makeText(MainActivity.this , "这是第二个button", 1).show();break;case R.id.button3:Toast.makeText(MainActivity.this , "这是第三个button", 1).show();break;default:break;}}// 第三种是用xml定义(绑定)一个onClickListener事件public void showMessage(View v){Toast.makeText(MainActivity.this, "第三种方法实现事件绑定的button", 1).show();}}

第三种在XML中的组件代码:


 <Button        android:id="@+id/button4"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_below="@id/button3"         android:text="@string/button4"        android:onClick="showMessage"/>

更多相关文章

  1. Android(安卓)-List和ArrayList(),发现你的真身
  2. Android(安卓)Framework系列之IMF(二)
  3. android ksoap2 访问webservice,连续两次调用时,第二次调用异常
  4. React Native---手势响应系统
  5. SQLite与ContentProvider)
  6. Android(安卓)design support library---CollapsingAvatarToolba
  7. Android实战技巧:常用开发FAQ(续)
  8. Intent和Intent-Filter详解
  9. 【Android】使用Gallery组件实现循环显示图像

随机推荐

  1. Android保存照片到相册
  2. Android进程学习
  3. Android日志消息的生成详细步骤
  4. Android进程保活-自“裁”或者耍流氓
  5. Android后台保活实践总结:即时通讯应用无
  6. focusable ,focusableInTouchMode,控件焦点
  7. android 更改avd路径
  8. 避免Android内存泄露
  9. Android设备适配,这一篇就够了
  10. android 实现带清除效果的EditText(附带抖