1.使用接口继承按钮监听方法:

public class Hello_to_worldActivity extends Activity implements Button.OnClickListener{

private Button btn_say_hello;

private TextView hello_world;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);
btn_say_hello = (Button)findViewById(R.id.bnt_SAY_HELLO_TO_WORLD);

hello_world = (TextView)findViewById(R.id.textView1);

btn_say_hello.setOnClickListener(this) ;//由于该类继承了BUTTON的监听,
} //因此设置监听的参数只需传本类的对象即可

public void onClick(View v) {

// TODO Auto-generated method stub

//抽象接口的内部方法的实现

}

2.使用接口继承view类的监听方法

import android.view.View.OnClickListener;

public class Hello_to_worldActivity extends Activity implements OnClickListener{

private Button btn_say_hello;

private TextView hello_world;

  @Override

public void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);      setContentView(R.layout.main);      btn_say_hello = (Button)findViewById(R.id.bnt_SAY_HELLO_TO_WORLD);      hello_world = (TextView)findViewById(R.id.textView1);      btn_say_hello.setOnClickListener(this) ;//由于该类继承了view的监听,  } //因此设置监听的参数只需传本类的对象即可

public void onClick(View v) {

 //抽象接口的内部方法的实现

} }

3.不用接口,在类内部直接实现监听

public class Hello_to_worldActivity extends Activity {

private Button btn_say_hello;

private TextView hello_world;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

btn_say_hello = (Button)findViewById(R.id.bnt_SAY_HELLO_TO_WORLD);

hello_world = (TextView)findViewById(R.id.textView1);

btn_say_hello.setOnClickListener(new Button.OnClickListener(){

public void onClick(View v) { //使用匿名的Button实例

 //抽象接口的内部方法的实现

} }) ; } }

4.如果不使用匿名实例,也可以定义一个具体的实例,如下

public class Hello_to_worldActivity extends Activity {

private Button btn_say_hello;
@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

btn_say_hello = (Button)findViewById(R.id.bnt_SAY_HELLO_TO_WORLD);

btn_listener bl = new btn_listener();

btn_say_hello.setOnClickListener(bl); //bl是类btn_listener的实例,而btn_listener为监听方法的接口

} //因此设置监听的参数只需传本类的对象即可

}

class btn_listener implements Button.OnClickListener

{

public void onClick(View v) {

} }

5.多个button如何识别

button1.setOnClickListener(this);     button1.setTag(B1);      button2.setOnClickListener(this);     button2.setTag(B2);      button3.setOnClickListener(this);     button3.setTag(B3);  

@Override
public void onClick(View v) {
int tag = (Integer) v.getTag();
switch (tag){
case B1:

 // break;  .......}       }

转载于:https://blog.51cto.com/13652962/2354113

更多相关文章

  1. android 获取屏幕宽高 & 控件宽高
  2. 导入第三方项目因gradle引起的不能运行问题
  3. Android(安卓)view中invalidate方法学习小节
  4. Android与HTML5交互模版
  5. Android(安卓)studio button 按钮 四种绑定事件的方法
  6. Android中的Parcelable接口和Serializable使用方法和差别
  7. android srcollview按钮顶部停留
  8. Android中管理监听
  9. Android线程安全问题分析与解决

随机推荐

  1. android 瀑布流
  2. Android中全屏无标题设置(Android学习随笔
  3. Android应用程序键盘(Keyboard)消息处理机
  4. Android使用SQLiteDatabase直接存取数据
  5. Android监听应用程序安装和卸载
  6. Android(安卓)实现 欢迎界面 自动跳转 到
  7. Android(安卓)EventBus3.0 索引
  8. Android下rtc驱动调用流程
  9. Caused by: org.gradle.api.internal.plu
  10. android tp多点触摸