在片段之间传递ArrayList?

时间:2017-01-04 12:05:34

标签: android android-fragments

我有相当具体的final List<PieEntry> entries = new ArrayList<>();(PieEntry是MPAndroidChart),我想将它传递给另一个片段,然后将其显示在图表中。 我尝试了很多像parsing这样的方法,但每次运行应用程序时,饼图似乎都没有数据可以填充。 (也许我没有正确地做到,因为解释对我来说不够深入。)

我向后测试它,所以直到阵列都很好,例如我可以在第一个片段中绘制图表,一切正常。

也许我遗漏了一些细节,或者说我的方向完全错误了?

2 个答案:

答案 0 :(得分:0)

你可以用片段传递arraylist 按照以下代码

 List<PieEntry> entries = new ArrayList<>();
 entrie.add(additems);
 Fragment_FindABarDetail fragment;
 fragment = new Fragment_FindABarDetail().newInstance(entries);   
 fragmentManager.beginTransaction()
                        .replace(R.id.main_content, fragment).commit();

in fragment add

static List<PieEntry> entries_infragment;
public Fragment_FindABarDetail fragment newInstance(List<PieEntry> entries){

entries_infragment=entries;

return this;
}

答案 1 :(得分:0)

发送参数:

Fragment fragment = new Fragment();
final Bundle bundle = new Bundle();
bundle.putString("user_name", myusername);
fragment.setArguments(bundle);

接收参数:

Bundle args = getArguments();
if (args  != null && args.containsKey("user_name"))
String userName = args.getString("user_name");

您还可以尝试使用静态方法在片段之间传递数据。