android 按钮的四种点击事件

来源:互联网 发布:s8英雄联盟js打野天赋 编辑:程序博客网 时间:2024/06/04 08:27

第一种:内部类形式

在 onCrate() 方法中

// 采用内部类

button1.setOnClickListener(new MyOnClickListener());



// 实现 OnClickListener 接口 在 android.view.View 包中
public class MyOnClickListener implements OnClickListener {


@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "采用内部类实现", Toast.LENGTH_SHORT).show();
}
}


第二种: 匿名内部类

// 采用匿名内部类
button2.setOnClickListener(new OnClickListener() {


@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "采用匿名内部类实现", Toast.LENGTH_SHORT).show();
}
});

第三种:MainActity 实现 onclicklistener 接口 


button3.setOnClickListener(this);


@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.button3:
Toast.makeText(MainActivity.this, "采用onclickListener实现", Toast.LENGTH_SHORT).show();
break;


default:
break;
}


}

适用于 当一个界面上有多个 按钮  方便使用



第四种: 在在布局中添加onclik 属性 。


    <Button
        android:id="@+id/button4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/button3"
        android:layout_below="@+id/button3"
        android:layout_marginTop="19dp"
        android:onClick="anniudemo"
        android:text="按钮4" />

 在 activity 中创建这个方法  方法名  和  属性名 一致

public void anniudemo(View v) {


Toast.makeText(MainActivity.this, "采用在布局中添加onclik 属性实现", Toast.LENGTH_SHORT).show();


}


0 0