Android攻城狮—监听(按钮)点击事件
2016-11-10 00:00
405 查看
onClick事件
所有的控件都有一个onClick事件,包括Button和ImageButton。通过自身的.setOnClickListener(OnClickListener)方法添加点击事件
通过点击事件的监听可以实现点击按钮之后要发生什么动作
监听事件的实现方法
匿名内部类的实现public class MainActivity extends Activity { /* * 第一种方式:匿名内部类 */ private Button wordButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); /* * 1.初始化当前所需的一个控件 * findViewById --返回的是一个View的对象 * * 2.设置Button的监听器,通过监听器实现点击Button所要操作的事情 */ wordButton = (Button)findViewById(R.id.button1); //之所以用(Button)是因为findViewById返回的是一个View的对象,"View是所有控件的一个父类" wordButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // 在当前onClick方法中监听Button的动作 System.out.println("我的按钮被点击了"); } }); } }运行结果>>监听到点击事件后执行类中的方法(即控制台输出“我的按钮被点击了”)。
独立类的实现
/* *第二种方式:独立类 */ public class MainActivity extends Activity { //Button对象 private Button wordButton; private ImageButton imageButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); wordButton = (Button)findViewById(R.id.button1); wordButton.setOnClickListener(new MyClick() { //调用父类的OnClick @Override public void onClick(View v){ super.onClick(v); Toast.makeText(MainActivity.this,"wordbutoon", 1).show(); } }); imageButton = (ImageButton)findViewById(R.id.imageButton1); imageButton.setOnClickListener(new MyClick() { //调用父类的OnClick @Override public void onClick(View v){ super.onClick(v); Toast.makeText(MainActivity.this,"imagebutoon", 1).show(); } }); } } /* * 独立类 */ class MyClick implements OnClickListener{ @Override public void onClick(View v) { // 让所有试用当前外部类的点击事件的按钮都要做出一个动作(改变透明度) v.setAlpha(0.5f); } } //[实际应用]:需求让多个按钮实现同一种动作的时候,可用此方法,简化代码。运行结果>>监听到按钮点击事件后实现独立类中的方法(即点击按钮,透明度发生改变)。
实现接口的方式来实现
/* * 第三种方式:接口 */ public class MainActivity extends Activity implements OnClickListener{ private Button wordButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); wordButton = (Button)findViewById(R.id.button1); wordButton.setOnClickListener(this); } @Override public void onClick(View arg0) { Log.i("tog","第三种方式"); //Log用来打印日志 } }运行结果>>监听到按钮点击事件后实现方法(即打印日志)。
相关文章推荐
- Android 监听按钮的点击事件
- android监听按钮的点击事件
- Android开发20——单个监听器监听多个按钮点击事件
- #Android#监听按钮的点击事件
- Android开发20——单个监听器监听多个按钮点击事件 推荐
- Android点击Button按钮的四种事件监听方法总结
- Android开发20——单个监听器监听多个按钮点击事件
- Android按钮的五种点击监听事件处理
- Android学习之监听按钮点击事件
- 【Android】06、监听按钮点击事件
- Android实现监听按钮点击事件
- Android开发中按钮点击事件的监听
- Android开发20――单个监听器监听多个按钮点击事件
- Android学习-常见的UI控件 监听按钮的点击事件
- 【转】Android开发20——单个监听器监听多个按钮点击事件
- Android中三种方法监听按钮点击事件
- Android按钮点击监听事件的写法
- 【转】Android开发20——单个监听器监听多个按钮点击事件
- android 监听按钮的点击事件 匿名内部类监听按钮点击事件
- Android 监听按钮点击事件的三种方式(1:匿名内部类;2:外部类;3:接口方式)