RoboActivityでActivityクラスを拡張せずにroboguiceを使用する方法はありますか?
1865 次
2 に答える
10
はい。まだベータ版ではない1.2-SNAPSHOTを使用すると簡単になります。1.2を使用するには、onCreate()、onContentChanged()、およびonDestroy()に以下を追加するだけです。roboguiceイベントを使用していない場合は、EventManagerに関する情報は必要ありません。
@Override
protected void onCreate(Bundle savedInstanceState) {
RoboGuice.getInjector(this).injectMembersWithoutViews(this);
super.onCreate(savedInstanceState);
}
@Override
public void onContentChanged() {
super.onContentChanged();
RoboGuice.getInjector(this).injectViewMembers(this);
}
@Override
protected void onDestroy() {
try {
RoboGuice.destroyInjector(this);
} finally {
super.onDestroy();
}
}
RoboGuice 1.1.x(最新の安定したビルド)を使用している場合、原則は同じですが、呼び出しは少し異なります。1.1 RoboActivityソースを見て、どの呼び出しを行う必要があるかを確認してください。
于 2011-10-02T15:25:27.953 に答える
0
動作しますが、RoboContextを実装し、これを宣言する必要があります
protected HashMap<Key<?>,Object> scopedObjects = new HashMap<>();
于 2016-05-04T18:19:43.810 に答える