【问题标题】:Trying to start a Fragment from an Activity.尝试从 Activity 启动 Fragment。
【发布时间】:2014-02-25 13:52:03
【问题描述】:

我有一个使用操作栏选项卡实现的选项卡式视图,现在有一个或两个页面可以从这个选项卡视图导航。在某个时间点,我想再次调用前景中的片段之一。但我没有找到任何关于如何做到这一点的例子。

类定义(Fragment1_2):

public class Fragment1_2 extends Fragment {

类定义(AdhocEdit.class):

public class AdhocEdit extends Activity{

到目前为止的片段意图的活动:

Fragment1_2 fragmentB = (Fragment1_2)getFragmentManager().findFragmentById(R.id.fragemnt1_2);

        /*  Intent mainIntent;
            mainIntent = new Intent(AdhocEdit.this,Fragment1_2.class); 
            AdhocEdit.this.startActivity(mainIntent);
            AdhocEdit.this.finish();    */


        //    startActivity(new Intent(AdhocEdit.this, Fragment1_2.class));

评论是因为它们都不起作用。我还需要将此 Fragment1_2 添加到 Manifest 中吗,如果需要怎么办?

【问题讨论】:

    标签: android android-fragments android-activity


    【解决方案1】:

    你不能像为活动做的那样开始一个片段。

    片段由活动托管。您需要将片段添加到容器中。

    来自文档的示例

    ExampleFragment fragment = new ExampleFragment();
    fragmentTransaction.add(R.id.fragment_container, fragment);
    fragmentTransaction.commit();
    

    fragment_container 是容器的 id,通常是 FrameLayout,您可以在容器中添加所需的片段

    更多信息@

    http://developer.android.com/guide/components/fragments.html

    【讨论】:

    • 我已将它与 MainActivity 绑定,它为三个选项卡托管它,我在单击列表视图项 MainActivity-->ThreeTabs--->Fragment1_2 时打开此片段。现在我想从不同的活动中调用它。这可能是 AdhocEdit-->MainActivity--->Fragment1_2 吗?
    • @user2822178 您需要先导航到承载框架的活动。你不能启动一个framgent
    • 我无法通过与其父活动关联的任何方法启动它?
    • @user2822178 没有启动片段的概念,所以你对片段的理解都是错误的。
    • @user2822178 我建议您在进一步评论之前阅读文档。
    猜你喜欢
    • 1970-01-01
    • 2016-12-19
    • 2015-08-05
    • 1970-01-01
    • 1970-01-01
    • 2017-07-20
    • 2012-02-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多