假设我正在创建一个Android
应用程序,该应用程序具有Navigation drawer
和一组fragment
。当用户单击Navigation drawer
中的一个选项时,将加载相应的fragment
。应用程序只有一个activity
(Main activity
),没有view
。
当应用程序首次启动时,哪个fragment
被加载到main activity
中?在没有用户交互的情况下,application
如何知道首先加载哪个fragment
?如何设置自定义fragment
在应用程序启动时自动加载?
谢谢
您只需执行相同的FragmentTransaction,您使用它来替换用户交互上的片段,并在您的活动的onCreate()
方法。但你需要检查savedInstanceState是否为空,像这样:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(savedInstanceState == null) {
FragmentManager manager = getFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.replace(R.id.flFragmentContainer, MainFragment.newInstance());
transaction.commit();
}
}