我有一个onclick事件,我需要根据服务器响应更新网页上的一些视图。使用侦听器和处理程序实现此目的的最佳方法是什么?我认为我应该创建clickListener并将其映射到一个按钮,但我不知道如何通知视图它们应该呈现一些数据。 例如,我有一个演示者(称为Presenter)和3个视图(View1,View2,View3)。第一种方法是做这样的事情:
public class Presenter {
private View1 view1;
private View3 view2;
private View3 view3;
private Button button;
protected void doSmth() {
button.setClickListener(new ClickListener() {
view1.update();
view2.update();
view3.update();
});
}
}
但这显然是糟糕的做法。 (我认为)好的方法是做下一步:
public class Presenter {
private Button button;
protected void doSmth() {
button.setClickListener(new ClickListener() {
//push object that will trigger handlers in views.
});
}
//this is the same for all views
public class View {
protected void handleClickInPresenter() {
//render the data
}
}
但我无法理解如何实现这种方式。请求你的帮助。谢谢。