2
public class A extends Activity {
   public void onCreate(Bundle b){
      ~
       Button b1 = (Button) findViewById(R.id.btn);
       b1.setOnClickListener(new B());
      ~
   }
}

public class B extends OnClickListener{
    ~ do something public void onClick() etc..
}

有可能还是有什么方法可以做到这一点?

4

1 回答 1

9

OnClickListener是一个接口,所以根据你想用它做什么,你可以使用:

public interface MyClickListener extends OnClickListener {}

public class MyClickClass implements OnClickListener {}

查看您的示例,我假设您需要第二个选项:

public class MyClickClass implements OnClickListener {
    @Override
    public void onClick(View v) {
        Log.v("MyClickClass", "b1 clicked!");
    }
}

像这样使用它:b1.setOnClickListener(new MyClickClass());

于 2012-10-13T23:15:48.723 回答