gpt4 book ai didi

android - 调用 popBackStack() 时屏幕卡住

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:11:18 25 4
gpt4 key购买 nike

我有两个 fragment A 和 B。
我已经使用以下代码从 A 切换到 B:

    FragmentManager fragmentManager;
FragmentTransaction transaction;
fragmentManager = getActivity().getFragmentManager();
transaction = fragmentManager.beginTransaction();
transaction.setCustomAnimations(R.animator.enter_anim, R.animator.exit_anim,R.animator.popenter, R.animator.popexit);
transaction.replace(R.id.fragmentLayout, new B())
.addToBackStack("tag").commit();

B 包含 SQLite 操作(SugarORM)。
从 A 切换到 B 时,屏幕卡住,即使我正在使用 AsyncTaskIntentService 进行数据库操作。
此外,当我按下后退按钮 [getFragmentManager().popBackStack();] 时,屏幕会卡住几秒钟,然后从 B 切换回 A。
popBackStack 动画太不可见。
我尝试在 imageview 中显示不确定的进度条和动画列表,但它们也卡住了并且看起来好像它们是静态图像。

最佳答案

查看这篇关于分析主线程的文章:https://developer.android.com/studio/profile/traceview.html

这将向您展示什么正在占用主线程,这可能是卡住的原因。

另外,按照@NishantPardamwar 的建议检查 fragment 的生命周期方法,这些方法在主线程上运行并且可能是罪魁祸首。

关于android - 调用 popBackStack() 时屏幕卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39224404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com