有人知道如何在不使用匿名内部类的情况下编写以下代码吗?

final Button button = (Button) findViewById(R.id.button_id);
     button.setOnClickListener(new View.OnClickListener() {
         public void onClick(View v) {
             // Perform action on click
         }
     });

最佳答案

如果您想在不同的活动中重用View.OnClickListener,也可以编写自己的类来实现MyListener

class MyListener implements OnClickListener {
    @Override
    public void onClick(final View v) {
        // do something
    }
}


然后通过

button.setOnClickListener(new MyListener());


或创建一个对象,您可以重复使用:

MyListener myListener = new MyListener();
// ...
button.setOnClickListener(myListener);

10-05 23:18