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);
} }

Androidbutton事件的五中写法总结的更多相关文章

  1. jquery live hover事件的替代写法

    HTML中的hover行为通常在样式中定义,利用jquery实现此效果有两种情况. 第一种是常见的针对页面中静态的元素,以改变元素样式中的border-color为例,写法如下: $(function ...

  2. 【Android】按钮点击事件的常用写法

    学习总结: 最近学习了Android点击事件的常用写法.点击事件会触发监听对象身上的回调,常用写法有以下四种: 方法一:使用匿名内部类. public class MainActivity exten ...

  3. 整理:WPF用于绑定命令和触发路由事件的自定义控件写法

    原文:整理:WPF用于绑定命令和触发路由事件的自定义控件写法 目的:自定义一个控件,当点击按钮是触发到ViewModel(业务逻辑部分)和Xaml路由事件(页面逻辑部分) 自定义控件增加IComman ...

  4. Android四种点击事件和五中存储方式

    Android点击事件的四种实现方式 1.内部类实现onClickListenter接口 bt_login.setOnClickListener(new MyListener()); class My ...

  5. jquery事件链式写法

    <!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...

  6. js事件委托 jQuery写法

    http://www.cnblogs.com/liugang-vip/p/5616484.html 不是抄的,这篇文章写的细 这是js 事件委托写法 <!DOCTYPE html> < ...

  7. JS 事件添加onclick写法注意。

    自定义函数添加onclick事件写法注意. 错误写法:element.onclick = addclass(className); 正确写法:element.onclick = function(){ ...

  8. Android笔记——Button点击事件几种写法

    Button点击事件:大概可以分为以下几种: 匿名内部类 定义内部类,实现OnClickListener接口 定义的构造方法 用Activity实现OnClickListener接口 指定Button ...

  9. mousewheel滚轮事件 浏览器的写法

    鼠标的滚轮事件,在Jquery中有对应的一个插件:https://github.com/brandonaaron/jquery-mousewheel 原生的滚轮事件:火狐与其他浏览器使用了不同的事件 ...

随机推荐

  1. 青蛙的约会 poj 1061

    青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 86640   Accepted: 15232 Descripti ...

  2. array.fliter无法正确过滤出我想要的数组

    var checked_list = state.files.filter(function(item, id){ // console.log('click the ' + item.id); re ...

  3. python import windows文件路经

    import sys sys.path.append("E:\\python\\workspacepython\\PY001\\src\\testpy01") import str ...

  4. ML words

    samples:样本 multi-dimensional entry / multivariate data:多属性记录 features:特征,属性 supervised learning:监督学习 ...

  5. 从Chrome源码看audio/video流媒体实现一(转)

    现在绝大多数的网站已经从flash播放器转向了浏览器原生的audio/video播放器,浏览器是如何加载和解析多媒体资源的,这对于web开发者来说是一个黑盒,所以很有必要看一下浏览器是怎么实现的,Ch ...

  6. [POI2008]KUP-Plot purchase(单调队列)

    题意 给定k,n,和n*n的矩阵,求一个子矩形满足权值和在[k,2k]之间 , 题解 这里用到了极大化矩阵的思想.推荐论文<浅谈用极大化思想解决最大子矩阵问题>Orz 如果有一个元素在[k ...

  7. 【Henu ACM Round#20 A】 Fancy Fence

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 看看有没有(n-2)*180/n等于输入的a就好. [代码] #include <bits/stdc++.h> usin ...

  8. PatentTips - Supporting heterogeneous virtualization

    BACKGROUND A virtual machine (VM) architecture logically partitions a physical machine, such that th ...

  9. HDOJ 4009 Transfer water 最小树形图

    Transfer water Time Limit: 5000/3000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others) T ...

  10. wxWidgets笔记_1_linux环境下wxwidgets的安装与配置

    linux下wxwidgets环境的安装与配置 一.建立目标文件夹(自己定义) mkdir /opt/SCOTT 二.安装wxWidgets 1.wxWidgets版本号能够选用wxGTK-2.8.1 ...