目录
3、实现OnClickListener接口(Switch方法)
Hello,你好呀,我是灰小猿!一个超会写bug的程序猿!
今天在这里和大家总结记录下在Android开发中关于button点击后事件响应的三种实现方法,这三种方法分别是:
在xml中对onclick()进行指定方法;
在Actitivy中new出一个OnClickListenner();
实现OnClickListener接口
接下来我们就对这三种方法进行一一讲解:
1、在xml中对onclick()进行指定方法
如下在xml文件下对button按钮的属性进行定义,对onclick属性指定方法名,如在这里方法名为“btn_1”
<Button android:id="@+id/btn_1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="btn_1" android:text="+" />
之后在在MainActivity中实现为按钮绑定的btn_1()方法
public void btn_1(View v) { //绑定的btn_1方法 Toast.makeText(getApplicationContext(), "绑定方法1", Toast.LENGTH_LONG).show(); }
2、NEW一个OnClickListenner()接口实现
方法一:
在MainActivity.java文件下默认的onCreate()方法中对button控件进行关联,之后对关联的控件添加实现接口,在其中书写响应方法
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //第一步:关联控件 Button btn_add= findViewById(R.id.btn_add); //第二步:接口实例化 btn_add.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 在其中写入响应方法 } }); }
方法二:
同时关于使用OnClickListenner()接口实现事件响应还有另一种写法,就是将该OnClickListenner()接口单独实现,之后将该接口方法添加给控件,该写法可以使代码更加简洁直观。
在这里要注意:将接口实现方法绑定到控件的代码应该写在最后面,确保是先实现了接口方法,才绑定的控件
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //第一步:关联控件 Button bt_1= findViewById(R.id.btn_add); //第二步:实现接口 View.OnClickListener add = new View.OnClickListener() { @Override public void onClick(View v) { //响应事件 } }; //第三步:接口绑定控件 bt1.setOnClickListener(add); }
3、实现OnClickListener接口(Switch方法)
首先类要引用OnClickListener接口,并实现方法
public class MainActivity extends Activity implements View.OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //关联控件 btn_add=(Button) findViewById(R.id.btn_add); btn_reduce=(Button) findViewById(R.id.btn_reduce); et=(EditText) findViewById(R.id.editText1); //第二步,使用接口 btn_add.setOnClickListener(this); btn_reduce.setOnClickListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub switch(v.getId()) { case R.id.btn_add: //对应控件的响应时间 break; case R.id.btn_reduce: //对应控件的响应时间 break; } } }
关于button按钮响应事件的三种方法就分享到这里,
觉得不错记得点赞关注哟!
编辑