在片段和非父活动之间进行通信

时间:2017-04-29 10:11:41

标签: android android-fragments android-activity

是否可以在片段和非父活动之间进行通信?我正在开发一个应用程序,我从一个片段开始一个活动(非父),我希望活动能够与发起它的片段进行通信并恢复它。这可能吗?如果是这样,我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

假设您使用意图将用户发送到片段或活动,您可以执行以下操作:

Intent i = new Intent(ActivityOrFragment.this, TargetActivity.class);
i.putExtra("name", data of almost any type);
startActivity(i);

然后加载......

boolean v = getIntent().getBooleanExtra("name", false);//Name of the extra, default value if not found

解释:

上面首先提出额外的。它接受大量的变量类型。 Integersbooleans,甚至是parcelableserializable个类。然后使用活动中的getIntent检索目标(您可能需要在片段中使用getActivity)并获取您编写的数据getIntent().get[type]Extra

putExtra不需要特定类型。在Intent类中,putExtra定义了很多变量,其中一些变量包括integerparcelable(类),boolean,{{1 }},stringbytecharshort等等。