我有一个最初显示一个片段的应用,当点击一个按钮时,它会转换到下一个片段。然而,在第二个片段中,有ViewPager
来保存来自URL的图像。处理所有图像可能需要一些时间。它会在单击按钮时处理图像,然后降低片段设置的速度,这需要花费大量时间。我希望片段在那里并立即准备。
我可以在mainActivity中获取图像。但是,在提交fragmentTransaction之前,我无法将它们设置为ViewPager
,因为ViewPager
不存在,直到片段中出现onCreateView
方法,只有在事务处理时才调用承诺。在我提交事务之前,有没有办法在活动中设置片段。
因此,用户可以轻松地在两个片段之间切换,而无需等待它们进行处理。或者我应该使用标签。问题是我不希望标签栏显示在屏幕顶部。我希望在单击按钮时更改选项卡。
答案 0 :(得分:1)
听起来你正在处理主线程中的图像?我认为最好是,您只需将URL传递给第二个片段,并让它使用Loader在后台处理这些图像,并在每个图像加载时使用占位符。
如果你坚持在第一个片段中进行加载,你应该能够设置和添加你的第二个片段而没有任何图像,但是它是隐藏的。然后,一旦您的加载完成,您仍然可以从第一个片段访问ViewPager
,并在准备就绪后可以使用另一个事务show
第二个片段。
P.S。如果你的问题布局更符合逻辑而不是一个大段落,那么阅读/理解你的问题会更容易。