您的当前位置:首页正文

监听事件的三种实现方式

来源:帮我找美食网
监听事件的三种实现⽅式

1、在activity_main.xml⽂件中添加三个Button按钮

xmlns:tools=\"http://schemas.android.com/tools\" android:layout_width=\"match_parent\"

android:layout_height=\"match_parent\" android:paddingLeft=\"@dimen/activity_horizontal_margin\" android:paddingRight=\"@dimen/activity_horizontal_margin\" android:paddingTop=\"@dimen/activity_vertical_margin\" android:orientation=\"vertical\"

android:paddingBottom=\"@dimen/activity_vertical_margin\" tools:context=\".MainActivity\"> android:id=\"@+id/btn1\"

android:layout_width=\"match_parent\" android:layout_height=\"wrap_content\" android:text=\"@string/btn\" /> android:id=\"@+id/btn2\"

android:layout_width=\"match_parent\" android:layout_height=\"wrap_content\" android:text=\"@string/btn\" /> android:id=\"@+id/btn3\"

android:layout_width=\"match_parent\" android:layout_height=\"wrap_content\" android:text=\"@string/btn\" />

2、

第⼀种⽅式:通过内部类实现事件监听

/*

第⼀种⽅式:通过内部类实现事件监听 */

btn1.setOnClickListener(new View.OnClickListener() { @Override

public void onClick(View v) {

Log.i(\"tag\第⼀种⽅式:通过内部类实现事件监听\");

Toast.makeText(MainActivity.this,\"第⼀个按钮被点击\ } });

3、

第⼆种⽅式:通过外部类实现事件监听(独⽴类实现)

/*

第⼆种⽅式:通过外部类实现事件监听(独⽴类实现) */

btn2.setOnClickListener(new MyOnClickListener(){ @Override

public void onClick(View v) { super.onClick(v);

Log.i(\"tag\第⼆种⽅式:通过内部类实现事件监听\"); } });

class MyOnClickListener implements View.OnClickListener{

@Override

public void onClick(View v) {

Toast.makeText(MainActivity.this,\"第⼆个按钮被点击\ } }

说明:第⼆种⽅式:通过外部类实现事件监听(独⽴类实现),⼀般有多个组件要实现同⼀个⽅法时,才采⽤这种⽅法来实现事件监听。4、

第三种⽅式:通过OnClickListener接⼝实现事件监听

public class MainActivity extends Activity implements View.OnClickListener{ private Button btn3;

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn3.setOnClickListener(this);}

/*

第三种⽅式:通过OnClickListener接⼝实现事件监听 */

@Override

public void onClick(View v) {

Log.i(\"tag\第三种⽅式:通过OnClickListener接⼝实现事件监听\"); }}

说明: btn3.setOnClickListener(this);其中this就是实现OnClickListener下的onClick⽅法。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top