Android从片段到前一个片段传递参数?

时间:2015-07-03 08:06:31

标签: android android-fragments

需要您的帮助才能找出实现以下目标的最佳方法:

活动 - >片段A - >片段B。

当用户在片段B上时,他点击了保存。我希望它删除/ popBackStack片段B并使用从片段B传递的数据返回片段A.

提前致谢!

3 个答案:

答案 0 :(得分:1)

您可以在片段B中定义界面和属性,例如:

public interface OnSelectedListener {
    void onSelected(String s);
}

private OnSelectedListener mOnSelectedListener;

public void setOnSelectedListener(OnSelectedListener onSelectedListener) {
    mOnSelectedListener = onSelectedListener;
}

片段A - >片段B:

new OnSelectedListener();

单击片段B中的保存

onSelectedListener.onSelected("");

其他方法:DataBase,SharedPreferencesHelper

答案 1 :(得分:0)

尝试使用

LocalBroadcastManager

带示例的Web参考 -

https://gist.github.com/Antarix/8131277

答案 2 :(得分:0)

最快的解决方案是使用任何首选存储方法(如SharedPreferences或SQLite)在 fragment-B onPauseonStop中保存所需的值并加载他们回到片段-A onResumeonStart

或者通过在Activity中引入一个stub方法来替换save部分,该方法接受Bundle of values并传递给另一个片段。