button事件的五中写法:

1、匿名内部类

2、类实现View.OnClickListener接口

3、创建实例化接口对象

4、使用内部类

5、自己定义方法,配置Android:onclick属性

import android.media.JetPlayer.OnJetEventListener;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.Dialog;
import android.content.DialogInterface;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener{ Button button1,button2,button4,button5;
ImageButton button3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = (Button)findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener() {
//第一种方式:匿名内部内实现的按钮点击事件
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "匿名内部内实现的按钮点击事件", Toast.LENGTH_SHORT).show();
}
}); button2 = (Button)findViewById(R.id.button2);
button2.setOnClickListener(this); //第三种:创建实例化接口对象
button3 = (ImageButton)findViewById(R.id.button3);
OnClickListener listener = new OnClickListener(){ @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "创建实例化接口对象", Toast.LENGTH_SHORT).show();
}
};
button3.setOnClickListener(listener); //第四种方式:使用内部类
button4 = (Button)findViewById(R.id.button4);
button4.setOnClickListener(new MyOnClickListener());
} @Override
public 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;
} //另外一种方式:实现View.onClickListener接口实现接口中的onClick()方法
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
switch(arg0.getId()){
case R.id.button2:
Toast.makeText(this, "实现View.onClickListener接口实现接口中的onClick()方法",Toast.LENGTH_SHORT).show();
break;
}
} class MyOnClickListener implements OnClickListener{ @Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "内部类的方式", Toast.LENGTH_SHORT).show();
} } //第五种方式:自己定义方法:配置android:onClick属性
public void onButton(View view){
switch(view.getId()){
case R.id.button5:
Toast.makeText(this, "自己定义方法,配置android:onClick属性", Toast.LENGTH_SHORT).show();
break;
}
} public void onButton7(View view){
Toast.makeText(this, "aaaaaaaaaaaaaaaaaaaaa", Toast.LENGTH_SHORT).show();
setContentView(R.layout.activity_main2);
} }

最新文章

  1. B树——算法导论(25)
  2. JMeter压力测试
  3. unixLike命令拾遗
  4. ContentProvider跨进程共享数据
  5. GBDT原理实例演示 1
  6. UVa 104 - Arbitrage(Floyd动态规划)
  7. HDU 4825:Xor Sum(Trie)
  8. [Js]面向对象的选项卡实例
  9. PYTHON ASYNCIO: FUTURE, TASK AND THE EVENT LOOP
  10. Linux 下文件名乱码(无效的编码)的解决办法
  11. Setup SQL Server 2008 Maintenance Plan Email Notifications
  12. SCALA中类的继承
  13. Showing 2 changed files with 3 additions and 3 deletions.
  14. WWDC 2014 Session 205/217 Extension 注意事项
  15. PHP的反射机制【转载】
  16. 一种轻量级的微信小程序日志监控的方法
  17. MYSQL业务数据简单脱敏方案
  18. js 简单的进度条
  19. SecureCRT方向键不可用
  20. Perl 随机数据生成

热门文章

  1. [AGC018 B] Sports Festival 解题报告
  2. [NOI2013模拟] BZOJ4705 棋盘游戏 解题报告(组合计数)
  3. 28.STL常用算法
  4. java 8 , merge()
  5. sql索引碎片产生的原理 解决碎片的办法(sql碎片整理)
  6. NodeJS学习笔记 进阶 (9)express+cookie-parser:签名机制深入剖析(ok)
  7. [BZOJ2821]作诗(分块)
  8. CF245H Queries for Number of Palindromes(回文树)
  9. 阿里云主机centos设置虚拟内存
  10. script指定src后内部代码无效