Button事件的三种实现方法

时间:2023-03-10 08:49:47
Button事件的三种实现方法

onclick事件的定义方法,分为三种,分别为在xml中进行指定方法;在Actitivy中new出一个OnClickListenner();实现OnClickListener接口三种方式。

1.在xml中实现方法的绑定

    <Button
android:id="@+id/btn_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText1"
android:layout_below="@+id/editText1"
android:layout_marginTop="46dp"
android:onClick="btnadd"
android:text="+" />

在MainActivity中实现绑定的方法btnadd

   public void btnadd(View v)
{
//绑定的btnadd方法
Toast.makeText(getApplicationContext(), "我是绑定方法", Toast.LENGTH_LONG).show();
}

2.NEW一个OnClickListenner()接口实例

    @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(new OnClickListener() { @Override
public void onClick(View v) {
// TODO Auto-generated method stub }
});
}

上面这种是最为常见一种实现方法,为了让oncreat中的代码更清晰,我们也会是用另一种写法

    btn_add.setOnClickListener(add);

实现add方法:

    OnClickListener add =new OnClickListener() {

        @Override
public void onClick(View v) {
// TODO Auto-generated method stub }
};

3.实现OnClickListener接口

  首先类要引用OnClickListener接口,并实现方法

public class MainActivity extends Activity implements 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; }
} }