【问题标题】:First fragment to be added to the main activity when application starts up应用程序启动时要添加到主活动的第一个片段
【发布时间】:2014-03-21 11:41:17
【问题描述】:

假设我正在创建一个Android 应用程序,它有一个Navigation drawer 和一组fragments。当用户单击Navigation drawer 中的选项时,会加载相应的fragment。该应用程序只有一个activity (Main activity),它没有view

当应用程序第一次启动时,哪个fragment 被加载到main activity 中?在没有用户交互的情况下,application 如何知道首先加载哪个fragment?如何设置自定义fragment在应用程序启动时自动加载?

谢谢

【问题讨论】:

    标签: android android-fragments slidingdrawer


    【解决方案1】:

    您只需在用户交互和 Activity 的 onCreate() 方法中执行用于替换片段的相同 FragmentTransaction。但是你必须像这样检查 savedInstanceState 是否为 null:

    @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();
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-17
      • 2020-03-22
      • 1970-01-01
      • 2012-06-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多