点击侦听器的公共类

URA*_*oid 8 android android-button onclicklistener

我的所有6项活动中都有7个按钮.所有6个按钮在所有活动中都具有相同的功能.如何为这6个按钮执行常见的单击事件lisnter.

koe*_*e10 11

您可以创建一个实现View.OnClickListener的新类,如下所示:

public class MyClickListener implements View.OnClickListener {
    @Override
    public void onClick(View view) {
         // TODO handle the click   
    }
}
Run Code Online (Sandbox Code Playgroud)

在您的所有活动中,您可以像这样设置点击监听器:

button.setOnClickListener(new MyClickListener());
Run Code Online (Sandbox Code Playgroud)

您甚至可以在类中保存上下文以显示Toasts等.

public class MyClickListener implements View.OnClickListener {
    private Context context;

    public MyClickListener(Context context) {
        this.context = context;
    }

    @Override
    public void onClick(View view) {
         Button button = (Button) view;
         Toast.makeText(this.context, button.getText().toString(), Toast.LENGTH_SHORT).show();
    }
}
Run Code Online (Sandbox Code Playgroud)


Cha*_*lie 0

在类中创建一个函数,并将该类放在所有其他类所在的同一个包中。只需在 6 个 onclicklisteners 中调用该函数即可。