一、内部匿名类作为事件监听器
代码示例:
button.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { textView.setText("Button按钮"); } }); imageButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { textView.setText("ImageButton按钮"); } });
每个View仅可以注册一个点击事件的监听器,但是可以将多个按钮注册到同一个点击事件的监听器上。
代码示例:
Button.OnClickListener buttonListener = new Button.OnClickListener(){ @Override public void onClick(View v) { switch(v.getId()){ case R.id.Button01: textView.setText("Button按钮"); return; case R.id.ImageButton01: textView.setText("ImageButton按钮"); return; } }}; button.setOnClickListener(buttonListener); imageButton.setOnClickListener(buttonListener);
二、内部类作为事件监听器
三、Activity本身作为事件监听器
四、外部类作为事件监听器或者称为通过实现一个接口的方式实现监听事件
五、在布局文件中添加 android:onClick属性来实现
参考链接:1.Android添加按钮事件的几种方法