【发布时间】:2014-12-15 12:35:17
【问题描述】:
我想在不使用activity和fragment activity的情况下在两个fragment之间传递数据。
我不想使用这样的活动在片段之间传递数据:Communicating with Other Fragments
下面是我的场景:
我有一个父片段,里面有两个子片段。现在我需要在这两个片段之间传递数据。如何实现这一点?
我调查了这个:Event Bus,但没有得到片段的工作示例。
有没有其他方法可以在片段之间传递数据?
任何帮助将不胜感激。
根据 InnocentKiller 的回答编辑:
在 FragmentOne 中,我已经实现了:
FragmentTwo = new FragmentTwo();
Bundle bundle = new Bundle();
bundle.putString("Hello", "My name is Siddharth");
fragment.setArguments(bundle);
在 FragmentTwo 中,我已经实现了:
Bundle bundle = this.getArguments();
String myInt = bundle.getString("Hello","Test");
mStartTripButton.setText(myInt);
【问题讨论】:
-
没有Activity如何管理Fragment?
-
你可以使用单例/静态变量
-
@M D :在我的父片段中,我有一个包含两个片段的布局文件。我的父片段在我点击导航抽屉时被调用。我的导航抽屉是主要活动。
-
@MD:我不想在我的主要活动中使用回调方法,我希望它在我的父片段中。这样做会显示 ClassCast 异常。
-
关于 EventBus,您可以直接使用我回答中的示例。即:在片段 A 中
EventBus.getDefault().postSticky("Hello")和片段 B 中String hello = EventBus.getDefault().getStickyEvent(String.class)
标签: android android-activity android-fragments android-fragmentactivity