0
public class HostActivity extends Activity {
@Inject HostedFragment fragment;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_host);
ObjectGraph.create(new HostActivityModule()).inject(this);
if (savedInstanceState == null) {
getFragmentManager().beginTransaction().add(R.id.fragment_container, fragment).commit();
}
}
public static class HostedFragment extends Fragment{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_hosted, container, false);
}
}
@Module(injects = HostActivity.class)
public static class HostActivityModule {
@Provides @Singleton
HostedFragment provideHostedFragment() {
return new HostedFragment();
}
}
}
在一個新項目中,我開始使用匕首和嵌套片段,在我的腦海中出現了兩個問題。 1.應該將片段注入活動還是其他片段? 2.在配置更改後注入處理娛樂的碎片的正確方法是什麼? 我遇到的問題是在上面的代碼中,另一個HostedFragment將被創建並注入到HostActivity中。注入片段和配置更改處理
if (savedInstanceState == null) {
ObjectGraph.create(new HostActivityModule()).inject(this);
getFragmentManager().beginTransaction().add(R.id.fragment_container, fragment).commit();
}
修改上面的版本可能避免創建重複HostedFragment但如果我們需要其他注射然後片段,它們不是娛樂時注入。
任何人都可以幫助我嗎?