【问题标题】:adding fragment to a activty from second activity从第二个活动向活动添加片段
【发布时间】:2018-07-12 05:21:26
【问题描述】:

我有 2 个活动和 2 个片段。 在第一个活动中,有 2 个按钮和这些按钮的 onClick 我想将单独的片段添加到第二个活动。 就像点击 btn1 打开片段 1 和点击 btn2 打开片段 2 并附加到第二个活动。

【问题讨论】:

标签: android android-fragments fragment fragmentmanager


【解决方案1】:

您必须将标志从 1 个活动传递到 2 个活动。并为 2 项活动设置条件。如下图,

此按钮 1

 Intent intent = new Intent(view.getContext(), Activity2.class);
                        intent.putExtra("key", "button1");
                        startActivity(intent);

此按钮 2

Intent intent = new Intent(view.getContext(), Activity2.class);
                        intent.putExtra("key", "button2");
                        startActivity(intent);

第二次活动

String click = new Intent.getStringExtra("key");
if(click.equal("button1")){
 FragmentManager fragmentManage = getSupportFragmentManager();
        fragmentManage.popBackStack();;
        fragmentManage.beginTransaction().add(R.id.framLayout, new FragmentTab_One()).commit();
} else if(click.equal("button2")){
 FragmentManager fragmentManage = getSupportFragmentManager();
        fragmentManage.popBackStack();;
        fragmentManage.beginTransaction().add(R.id.framLayout, new FragmentTab_Second()).commit();
}

【讨论】:

  • 您的解决方案帮助很大,但是如果按钮数量增加,我们有什么办法可以通过定义方法并将片段作为参数传递给按钮的 onClick 方法来实现
  • @SumanRazz 你能告诉我那个按钮是动态的还是静态的来吧
  • 它们是静态按钮,但我想为指定的片段添加更多按钮
【解决方案2】:

在 Intent 中的第一个和第二个按钮单击时传递不同的值并启动 Second Activity。

当您到达第二个活动时,检查从第一个 Activity.create if 条件检查值并基于条件调用片段的门控值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-12
    • 2015-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多