当我使用FragmentPagerAdapter将片段添加到活动中时,如何从活动中调用片段方法?

时间:2018-01-30 14:17:10

标签: java android android-fragments android-studio-3.0

我在MainActivity上为滑动视图创建了三个片段。这就是我使用FragmentPagerAdapterMainActivity上添加这些片段的原因。这一切都运作良好。现在我在片段1上创建了波纹管方法。

public void myToast(String text){
Toast.makeText(getActivity(), text, Toast.LENGTH_LONG).show();
}

如何从MainActivity调用/调用此方法?

注意:我无法使用findFragmentById()findFragmentByTag()方法,因为这些片段没有idtag

1 个答案:

答案 0 :(得分:1)

你可以使用这些方法 -

private static String makeFragmentName(int viewPagerId, int index) {
        return "android:switcher:" + viewPagerId + ":" + index;
    }

要访问 -

YourFragment yourfragment = (YourFragment) getSupportFragmentManager().findFragmentByTag(makeFragmentName(yourpager.getId(),the fragment number must be int /* 0, 1, 2 *\));

然后您可以在活动中使用片段的方法 -

yourfragment.maketoast()