获取称为片段

时间:2017-08-10 11:39:43

标签: android android-fragments fragmentpageradapter

在我的片段中,我有一个'解雇'按钮应该以不同的方式运行,这取决于哪个Activity称为其父活动(比如TutorialActivity)。

在TutorialActivity中我已经确定哪个Activity调用了它。如何将数据传递给片段?

我的片段驻留在PagerAdapter中,我不想将此信息作为“新实例”(' newInstance()'考虑到我的FragmentStatePagerAdapter中的每个片段的参数都是相同的,每次参数,因为它看起来有点过分。

2 个答案:

答案 0 :(得分:0)

您可以通过将此变量设为公共来访问“教程活动”中的变量。假设变量名是父。您可以使用TutorailActivity实例访问它(假设片段中使用的Activity实例是mTutorialActivity),那么它应该像mTutorialActivity.parent。 但是你需要传递TutorialActivity的实例,因为它可能用于其他目的,比如从strings.xml和其他目的中获取字符串。因此传递Activity实例而不是变量是有益的。

答案 1 :(得分:0)

我最终做了什么:我在TutorialActivity本身实现了所谓的“不同行为”,从片段中移除了关闭按钮。然后是一个简单的onClickListener和一个switch语句。