将数据从活动发送到片段android工作室[重复]

Posted

技术标签:

【中文标题】将数据从活动发送到片段android工作室[重复]【英文标题】:send data from activity to fragment android studio [duplicate] 【发布时间】:2016-12-23 20:12:45 【问题描述】:

我想将数据从活动发送到片段,但我提交的片段数据为空。我不知道为什么。这是我发送数据并调用片段时的代码。

String b = "hahhaha";
Bundle bundle = new Bundle();
bundle.putString("coba" ,b);
bundle.putSerializable("modelassign" ,modelAssign);

// set Fragmentclass Arguments
ViewTaskFragment vtf = new ViewTaskFragment();
vtf.setArguments(bundle);

//call fragment
FragmentTransaction transact=getSupportFragmentManager().beginTransaction();
transact.add(R.id.content_frame, new ViewTaskFragment(), "viewtaskfragment");
transact.commit();

这是我检索发送数据时的代码:

 modelAssign = (ModelAssign) this.getArguments().getSerializable("modelassign");
 String haha = this.getArguments().getString("coba");

谁能帮忙?

【问题讨论】:

【参考方案1】:

在向事务添加片段时,您正在创建 ViewTaskFragment() 的新实例,使用已创建的对象来存储捆绑包。

transact.add(R.id.content_frame, vtf  , "viewtaskfragment");

【讨论】:

哇.. 非常有帮助,谢谢【参考方案2】:

您将参数包传递到Fragment

ViewTaskFragment vtf = new ViewTaskFragment();
vtf.setArguments(bundle);

然后为事务创建一个新的Fragment

transact.add(R.id.content_frame, new ViewTaskFragment(), "viewtaskfragment");

使用您之前创建的包含参数的Fragment

transact.add(R.id.content_frame, vtf, "viewtaskfragment");

【讨论】:

【参考方案3】:

改变这个

transact.add(R.id.content_frame, new ViewTaskFragment(), "viewtaskfragment");

transact.add(R.id.content_frame, vtf, "viewtaskfragment");

【讨论】:

以上是关于将数据从活动发送到片段android工作室[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Java Android - 将数据从活动发送到片段

在Android中将数据从活动发送到片段

如何将数据从一个片段传输到另一个片段android

ViewPager - 将数据从片段发送到活动时出现 Android 错误 setCurrentItem(int,boolean)

Android:使用 putExtra 从片段访问容器活动对象?

Android Java将变量从片段传递到活动[重复]