我这里可能走错了路,应该是在考虑事件/发布-订阅,如果是的话,请赐教。
我有一个正在运行的 android 项目,其中有一个用作屏幕菜单的布局。使用“
现在,一些功能是通用的和全局的。就像我有一个“添加”按钮,它可以做一些它应该总是做的事情。然后,我希望能够根据发起操作的 Activity 自定义除此之外的功能。
我在一个简单的 java 类中分离了菜单逻辑,构造函数将 Activity 作为参数。从这里,我可以将点击监听器附加到菜单中的按钮,并在点击时执行操作。
我想要的是这样的:
private void addBtn(String text, String path) {
LinearLayout ll = (LinearLayout) parentActivity.findViewById(R.id.dynamicButtonLayout);
Button newButton = new Button(parentActivity);
newButton.setText(text);
newButton.setTag(path);
newButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
//Do Stuff.
fireDoneHandlingButtonClick();
} catch (Exception e) {
}
}
});
}
然后有办法在父 Activity 中处理这个方法。我应该考虑事件,还是应该考虑一种方法,将方法作为参数添加到 Activity 的 addBtn 方法中,该方法可以从点击监听器内部触发?
最佳答案
关于类 Java 回调/事件方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8211414/