为什么片段可以嵌套到Viewpager中?

时间:2016-03-18 07:31:35

标签: java android android-fragments android-activity

在阅读了ViewPager的源代码之后,我得到了ViewPager直接继承的ViewGroup类,因此很容易理解View可以从Google doc添加到ViewPager.But:

  

ViewPager最常与Fragment一起使用,这是一个   提供和管理每个页面生命周期的便捷方式。那里   是使用片段的标准适配器   ViewPager,涵盖了最常见的用例。这些是   FragmentPagerAdapter和FragmentStatePagerAdapter

我们可以了解Fragment可以与ViewPager一起使用。 但以下显示Fragment不是View。

  

public class Fragment实现了ComponentCallbacks,   OnCreateContextMenuListener

所以我的问题是为什么片段可以嵌套到ViewPager中? Fragment如何与ViewPager一起使用?是否可以使用Activity而不是Fragment?

1 个答案:

答案 0 :(得分:2)

  

片段不是视图

是的,但您可以从Fragment.getView()

获取视图
  

为什么片段可以嵌套到ViewPager

因为FragmentPagerAdapter是您附加到ViewPager以显示片段的适配器

相关:Difference between FragmentPagerAdapter and FragmentStatePagerAdapter

  

可以使用Activity而不是Fragment吗?

目前还不清楚你想做什么,但一般来说,是的....除非你的意思是将一个Activity加载到ViewPager中,否则没有。您应该将ViewPager放入Activity布局,然后使用FragmentPagerAdapter将片段加载到ViewPager