2

最近,我想知道如何使用ViewPager浏览片段。我必须在活动中设置TextView文本Fragement。我发现可以通过以下方式获取Fragment对象ViewPager

getSupportFragmentManager().findFragmentByTag("android:switcher:" + R.id.pager + ":0");

当我尝试在onCreate()活动方法中执行此操作时,它总是返回null. 我认为那是因为Fragment还没有开始。那么我应该在哪种方法中尝试访问片段对象,以便可以向片段方法发送参数?

4

2 回答 2

2

两个答案解决了我的问题。

答案 1:

Fragment fragment = getSupportFragmentManager().getFragments().get(position);

或回答 2:

Fragment fragment = (Fragment) viewPager.getAdapter().
          instantiateItem(viewPager, viewPager.getCurrentItem());
于 2017-01-04T10:21:17.047 回答
1

如果您有 ViewPager 并且想要访问 ViewPager 中的片段,则可以使用以下代码:

Fragment currentFragment = (Fragment) viewPager.getAdapter().instantiateItem(viewPager, viewPager.getCurrentItem()); //gets current fragment
//now you have to cast it to your fragment, let's say it's name is SenapatiFragment

((SenapatiFragment)currentFragment).someMethod(...); // you have now access to public fields and methods that are inside your fragment
于 2013-02-07T12:33:34.467 回答