我正在学习如何使用RoboGuice(和依赖注入)。我的问题是我想注入自定义FragmentPagerAdapter到活动,但我需要通过FragmentManager的某种方式。有办法做到吗?在文档中,他们提出了一种传递上下文的方法,但我需要传递FragmentManager -我需要这样做吗?
For Dagger:
使用Activity.getFragmentManager()
在活动特定子图中为FragmentManager
定义绑定。然后将FragmentManager
注入FragmentPagerAdapter
,将FragmentPagerAdapter
注入Activity
。
public class ActivityModule {
private final Activity activity;
public ActivityModule(Activity activity) {
this.activity = activity;
}
@Provides
public Activity getActivity() {
return activity;
}
@Provides
FragmentManager provideFragmentManager(Activity activity) {
return activity.getFragmentManager();
}
}
看起来可以直接注入Activity
。然后,您应该能够调用activity.getFragmentManager()
。或者如果您正在使用支持库((FragmentActivity) activity).getSupportFragmentManager()
.