【问题标题】:Passing data from fragment in an Activity from Another Activity从另一个活动的活动中的片段传递数据
【发布时间】:2013-06-13 01:30:06
【问题描述】:

我研究过将数据从 Activity 传递到 Activity。但是我不能使用相同的方法传递给我的片段。如何将数据传递给我的片段?

我使用的代码是

    Intent i = new Intent(getApplicationContext(), NewActivity.class);
    i.putExtra("new_variable_name","value");
    startActivity(i);

在其他活动中

    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        String value = extras.getString("new_variable_name");
    }

【问题讨论】:

  • 在片段中你可以调用 getActivity() 来做...
  • 哇,getActivity() 的工作就像一个魅力!但我不能将其标记为答案
  • 哦,没问题。很高兴知道。

标签: java android android-activity fragment


【解决方案1】:

借助接口在两个片段之间传递数据非常容易。

我认为this 就是您要找的。​​p>

希望这会有所帮助:)

为了将日期从活动传递到片段,很好地解释了here

【讨论】:

  • 有用的文章,以后可能会用到,我可以用它来将数据从活动传递到片段吗?
  • 我尝试添加一个 getActivity() 并且它有效,但我是 android 开发新手,所以有什么推荐的做事方式吗?
  • @BloopieBloops 您现在使用的方式是正确的,但我建议您将这两件事分开,即活动到片段和片段到片段,如果我的回答对您有帮助,那么不要忘记接受它...
【解决方案2】:
  1. 使用setArguments()Bundle 传递给片段。即使在配置更改时,片段也会保留此捆绑包。它将被传递到onCreate() 和片段的其他方法。

  2. 通过 id 或 tag 找到现有的片段:getFragmentManager.findFragmentById(),并调用片段类的方法。

  3. 将父活动引用保存到片段的onAttach() 中的局部变量,并从片段中调用父活动类的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-03
    • 1970-01-01
    • 2015-12-18
    • 1970-01-01
    • 2018-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多