假设我们有一个应用程序,其中包括:
- ActionBarActivity 以 ViewPager 作为其布局(用于片段之间的水平滑动)调用 MainActivity,其中包含下面详述的两个片段。
- SettingFragment 控制 ContentFragment 的 Controls 的可见性(例如当我们在 Setting Fragment 中的 visibilitySpinner 中选择 2 时,它将使 ContentFragment 上的 EditText1 和 EditText2 可见,而 EditText3 的可见性保持为 GONE), SettingFragment 位于 ViewPager 的第一页。
- ContentFragment 由 3 个 EditText 组成。
那么activity第一次创建的时候,会不会按顺序创建fragment呢?(SettingFragment > ContentFragment)还是会同时创建?更准确地说,更新 ContentFragment 中控件的可见性的最佳事件是什么?
我想到的是在 SettingFragment 中创建一个按钮,然后在 onClick 事件上更新 ContentFragment 控件的可见性。这工作正常,但我认为如果我尝试使用相同的方法一次更新多个片段的可见性,我会得到 NullPointerException(因为 AFAIK ViewPager 只创建我们当前“活动”片段的上一页和下一页,CMIIW)。
谁能给我一个更清晰的见解?非常感谢。