Java Android - 如何从活动“启动”或“初始化”片段?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/19915031/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-12 21:16:39  来源:igfitidea点击:

Android - How do I "start" or "initialize" a Fragment from an activity?

javaandroidandroid-fragmentsandroid-activity

提问by wiseindy

I have a class called DummyFragmentthat extends Fragment.

我有一个名为DummyFragmentextends的类Fragment

public class DummyFragment extends Fragment {

    public void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);

        setRetainInstance(true);

        Log.i("myapp","test");
    }
}

Now, in my parent activity, I want to "run" this fragment.

现在,在我的父活动中,我想“运行”这个片段。

This is my FirstActivity.java:

这是我的FirstActivity.java

public class FirstActivity {

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);

        // How do I run/start my fragment? I want it's onCreate method to fire
        Fragment fraggy = new DummyFragment();
    }
}

How do I run/start my fragment? I want my DummyFragment's onCreatemethod to fire.

如何运行/启动我的片段?我希望 myDummyFragmentonCreate方法触发。

采纳答案by Blacklight

There's plenty of documentation! Everything you need is already here.

有很多文档!您需要的一切都在这里

FragmentManager fragmentManager = getFragmentManager()
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();

Fragment fraggy = new DummyFragment();
fragmentTransaction.add(R.id.fragment_container, fraggy);
fragmentTransaction.commit();

Of course, you'll need the container in you activity layout.

当然,您需要在活动布局中使用容器。