onclick イベントがあり、サーバーの応答に従って Web ページのいくつかのビューを更新する必要があります。リスナーとハンドラーを使用してこれを実装する最良の方法は何ですか? clickListener を作成してボタンにマップする必要があると思いますが、データをレンダリングする必要があることをビューに通知する方法がわかりません。たとえば、1 つのプレゼンター (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
}
}
しかし、この方法で実装する方法がわかりません。助けを求めてください。ありがとうございます。