我有一个问题,MainActivity底部的标签栏(扩展FragmentActivity),
当我启动应用程序时,fragment1(在tab1中)和fragment2(在tab2中)将调用onCreateView,
和每个fragent中的一些加载操作(如扫描的东西),但我不知道如何
当我切换两个标签时停止调用onCreateView,我只想保持加载状态,即使我从另一个切换.
当我启动应用程序时,fragment1(在tab1中)和fragment2(在tab2中)将调用onCreateView,
和每个fragent中的一些加载操作(如扫描的东西),但我不知道如何
当我切换两个标签时停止调用onCreateView,我只想保持加载状态,即使我从另一个切换.
我该如何实现它(只是使用这种方式,我不想使用tabhost)?
解决方法
Fragment.onCreateView是
fragment lifecycle的标准部分,你不应该试图阻止它被调用.
根据我的理解,你的onCreateView方法可能正在做一些丑陋的工作,这就是你不希望它被调用的原因.如果是这种情况,您应该将此代码移动到另一个生命周期方法,这种方法不会经常调用(例如onCreate或onActivityCreated,如果您还需要活动上下文).
onCreateView应仅用于扩充您的布局,并可能引用您需要与之交互的ui组件.