我正在使用此示例创建一个简单的应用程序,它由Joshep Raco(JoeRock11)制作
https://github.com/JoeRock11/Xamarin_DesignLibrary
我有一个问题,我正在使用这个示例创建一个标签式应用程序,我发现了一个奇怪的行为,当应用程序只启动fragment1和fragment2加载,但不是fragment3(当我说加载我的意思他们的oncreate和oncreateview方法被触发)。 要加载fragment3,我必须明确点击它,我认为所有碎片都会加载但不是这样,不知道为什么,我想知道为什么会发生这种情况。
此外,这是我的主要问题,我不知道如何解决它,每次我点击一个片段选项卡,我想要这个片段到reaload,现在看起来它只是显示内存中的实例化片段,因为它doens我试图片段的任何方法,我需要再次加载它,因为我需要刷新它的数据,现在它只是随机重载。你或任何人可以帮我解决这个问题吗?
提前多多感谢。 pd:对不起我的英语,这不是我的母语。
答案 0 :(得分:0)
我认为这是由Off Screen Page Limit
控件上的ViewPager
控制的。此值默认为1,这基本上意味着,ViewPager
一次应加载的页数为2,当前显示的页面和一次关闭屏幕。
可以使用OffscreenPageLimit
上的ViewPager
属性轻松调整此值。
http://developer.android.com/reference/android/support/v4/view/ViewPager.html#setOffscreenPageLimit(int)
如果您希望所有Fragments
在数据滑入屏幕后重新加载数据,您可以覆盖每个UserVisibleHint
上的Fragment
,然后检查{{1}是可见的并执行一些代码来重新加载该片段的数据:
Fragment
此处概述了更新ViewPager片段的另一种方法:Update ViewPager dynamically?