1

@inject を使用してネストされたビューをベース ビューのコンストラクターに挿入すると、問題に直面しています。ネストされたビューのイベントを独自のプレゼンターで処理できません。そのため、Base View のプレゼンターでそれらを処理する必要があります。私は2つのビューとそれぞれのプレゼンターを持っています: AppBaseView - AppBasePresenter; LoginView - LoginPresenter。LoginView を AppBaseView に @inject します。Login Button イベントを処理する必要があるため、LoginPresenter では処理できませんが、AppBasePresenter で処理する必要があります。なぜそれが起こるのか分かりません。何か不足していますか?この問題に関する任意の光は、高く評価されます。

ありがとう。

4

1 に答える 1

1

同じビューを複数のクラスに挿入しようとしている場合は、それを としてマークする@Singletonか、両方のクラスが同じインスタンスを受け取るようにする必要があることに注意してください。デフォルトでは、Guice と Gin はクラスを注入するたびに新しいインスタンスを作成します。あなたの説明からはわかりにくいですが、プレゼンターが所有するインスタンスにイベント リスナーを追加してから、別のインスタンスをアプリケーションに表示している可能性があります。

于 2012-10-03T16:36:13.717 に答える