Java 处理主活动中自定义视图中的多个按钮

Java 处理主活动中自定义视图中的多个按钮,java,android,Java,Android,我不明白如何从主活动类访问自定义视图中的按钮。 我有两门课: 我的活动 按钮视图线性布局 ButtonView自定义类包含多个以编程方式添加的按钮 addView(new Button(getContext())); 现在我想为每个按钮处理onClickListener方法,但是在MyActivity类中。 我有点像 ButtonView = (ButtonView)findViewById(R.id.button_view); 因此,当按下ButtonView中的按钮时,应在主活动类中调

我不明白如何从主活动类访问自定义视图中的按钮。 我有两门课:

我的活动 按钮视图线性布局 ButtonView自定义类包含多个以编程方式添加的按钮

addView(new Button(getContext()));
现在我想为每个按钮处理onClickListener方法,但是在MyActivity类中。 我有点像

ButtonView  = (ButtonView)findViewById(R.id.button_view);
因此,当按下ButtonView中的按钮时,应在主活动类中调用特定的方法。我不知道如何做到这一点,有什么建议吗

public interface ButtonListener {
          public void onButtonPressed(View v);
按钮视图类

ButtonListener mListener;
public void setListener(ButtonListener listener) { mListener = listener; }

Button button = new Button(getContext());
button.setOnClickListener(  ..... if(mListener != null { mListener.onButtonPressed(v));
addView(button);
活动课

  public MainActivity extends Activity implements ButtonListener {

          ButtonView buttons = new ButtonView();
          buttons.setListener(this);
          public void onButtonPressed(View v) { //your code here to handle button pressed }


  }
基本上,当您按下ButtonView类中的任何按钮时,它将使用侦听器将按钮视图本身发送到活动


希望有帮助。

是否在MainActivity中以编程方式添加按钮?按钮本身以编程方式添加在ButtonView类中前两行是什么意思?感谢responseInterface类,它本身就是听众。