Abd*_*een 3 android preferencefragment dagger-2
我正在我的应用程序中使用Dagger2. 我有一个使用PreferenceFragmentCompat. 但是由于Dagger2没有提供相应的类型PreferenceFragmentCompat(就像它提供DaggerActivity替换Activity和DaggerFragment替换Fragment),AndroidInjection.inject(this)在我的设置片段中注入依赖项时如何使用?
AndroidInjection.inject(fragment)需要fragment实现dagger.android.HasAndroidInjector可以从dagger.android.AndroidInjection 源代码中读取。
HasAndroidInjector可以像实现方式一样DaggerFragment实现(源)。
public class SettingsFragment
extends PreferenceFragmentCompat
implements HasAndroidInjector {
@Inject DispatchingAndroidInjector<Object> androidInjector;
@Override
public void onAttach(Context context) {
AndroidSupportInjection.inject(this);
super.onAttach(context);
}
@Override
public AndroidInjector<Object> androidInjector() {
return androidInjector;
}
/* Other code */
}
Run Code Online (Sandbox Code Playgroud)