我创建了一个 android 应用程序,它使用 ViewPager 来浏览三个片段(三个片段中的每一个都包含一个 gridview)。
我最近开始学习片段,并假设在我的网格视图在它们的片段中创建之后,每个片段都将在内存中并且永远不必再次加载。
最近我注意到,当我从左边的片段滑到中间的片段,然后到右边的片段时,最左边的片段必须用我的适配器再次填充它的网格视图。
我只是想知道为什么当我从最左边的片段导航到最右边的片段时会发生这种情况,而不是当我在并排的片段之间导航时会发生这种情况。它是否只将最近的片段保留在内存中并杀死另一个片段?还是有其他原因导致应用程序不会将所有三个片段都保存在内存中?当我在片段之间快速导航时,我的应用程序会变得有点迟钝和缓慢,所以如果可能的话,最好只绘制一次每个 gridview。
我在 onCreate() 中填充我的arraylist(用于填充适配器),然后在 onActivityCreated(Bundle savedInstanceState) 中用适配器填充我的gridview