控件设置监听器的一些方法
2015-11-05 22:23
274 查看
方法一.创建一个类实现View.OnClickListener接口
创建TextViewClickListener类的对象,并调用helloWorldTextView的setOnClickListener方法把该对象传入给helloWorldTextView对象中的mOnclickListener属性,如果有点击事件,就会调用TextViewClickListener对象的onClick方法。
方法二,通过接口实现的匿名内部类来创建对象。
直接在onCreate方法中,创建OnClickListener接口的匿名内部类对象
感谢安卓杂谈网: http://www.yee4.com/blog/299.html
当然,还有第三种经常使用的方法
截自自己写的代码。
package com.keycky.TestListener; import android.view.View; import android.view.View.OnClickListener; public class TextViewClickListener implements OnClickListener { @Override public void onClick(View v) {//此处的v表示触发该点击事件的对象。 // TODO Auto-generated method stub System.out.println("TextView被点击了"); } }
创建TextViewClickListener类的对象,并调用helloWorldTextView的setOnClickListener方法把该对象传入给helloWorldTextView对象中的mOnclickListener属性,如果有点击事件,就会调用TextViewClickListener对象的onClick方法。
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView testTextView = (TextView) findViewById(R.id.testTextView); testTextView.setText("test"); TextViewClickListener textViewClickListener = new TextViewClickListener(); testTextView.setOnClickListener(textViewClickListener); }
方法二,通过接口实现的匿名内部类来创建对象。
直接在onCreate方法中,创建OnClickListener接口的匿名内部类对象
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView testTextView = (TextView) findViewById(R.id.testTextView); helloWorldTextView.setText("test"); testTextView.setOnClickListener(new View.OnClickListener() {//此处也是要注意导入OnClickListener包要导入android.view.View包 @Override public void onClick(View v) { // TODO Auto-generated method stub System.out.println("匿名内部类实现的监听TextView点击!"); } }); }
感谢安卓杂谈网: http://www.yee4.com/blog/299.html
当然,还有第三种经常使用的方法
截自自己写的代码。
public class MainActivity extends Activity implements OnClickListener { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initviews(); initEvents(); } private void initEvents() { mGetImage.setOnClickListener(this); mDetect.setOnClickListener(this); } private void initviews() { mPhoto = (ImageView) findViewById(R.id.id_photo); mGetImage = (Button) findViewById(R.id.id_getImage); mDetect = (Button) findViewById(R.id.id_detect); mTip = (TextView) findViewById(R.id.id_tip); mWatting = findViewById(R.id.id_waitting); } public void onClick(View v) { switch (v.getId()) { case R.id.id_getImage: break; case R.id.id_detect: break; }
相关文章推荐
- 如果像招聘程序员那样招聘木匠
- 换本书,继续学
- 国内IT公司病种,需要合理协调,共同进步,才能不被嘈乱的世道所唾弃
- R.anim.slide_in_right错误解决
- C++primer第五版第五章学习笔记
- 重拾信心,持之以恒
- <蓝牙BLE>cc2540主机获取数据包
- iOS 网络编程
- php download断点
- 第1章 Java中常用字符串方法总结
- Eclipse 跟Intellij IDEA 快捷键比较
- iOS——常用加密方式
- python join
- UVA 10806 Dijkstra, Dijkstra.(最小费用最大流)
- poj 3280 Cheapest Palindrome 区间dp
- Java SimpleORM 使用介绍
- 神的规范:排序算法(一):简单插入排序
- 截取字符串的函数 按照字节 中文判别
- Arduino智能小车实践学习报告
- Java 继承 反汇编 class A { } 执行结果