3
我想在我的應用程序中實現Dagger,我有一個實例,我需要在Activity類層次結構中的類中注入一個字段,但此類的子類不需要任何注入成員。層次結構如下所示:可以匕首注入一個抽象的Activity類,而不注入子Activity類嗎?
BaseActivity - > NavigationActivity - > HomePageActivity。
我試圖注入在NavigationActivity一個領域,但我從匕首以下異常:
java.lang.IllegalArgumentException: No inject registered for members/com.quidsi.diapers.activity.HomePageActivity. You must explicitly add it to the 'injects' option in one of your modules.
我的模塊看起來像這樣
@Module(
injects = NavigationActivity.class
)
public class GestureModule {
@Provides
GestureInterface provideGestureInterface() {
return new MockDrawerGesture();
}
}
這是可能的匕首還是需要注入NavigationActivity的每個孩子?
Dagger2還需要注入子類,但如果組件接口方法中缺少給定的'void inject(SomethingActivity somethingActivity)',它將引發編譯錯誤而不是運行時錯誤。 – EpicPandaForce 2015-05-31 09:11:13