gpt4 book ai didi

android - 改善重型布局的加载时间

转载 作者:太空狗 更新时间:2023-10-29 14:16:32 25 4
gpt4 key购买 nike

我有一个有很多 Activity 的应用程序,所有 Activity 的布局都有很多 View (TextViews,以不同样式显示不同类型的数据,ImageViews 等)。

加载 Activity 时,它们会花费太多时间来加载布局/UI(超过一秒)。

问题:有没有办法减少加载 Activity 所需的时间,因为 Activity 加载 UI 的时间太长?

我所拥有的东西的简短描述:

  • 所有布局至少有 30-35 次浏览
  • 我正在使用相对布局
  • 我不是嵌套布局,大部分view都是平行的,overdraw最多2x
  • 所有的 TextView 都是自定义的,为它们设置自定义字体
  • UI 正在 Activity 的 onCreate() 中加载

我正在考虑执行以下任一操作:

  • 以 Activity 数量较少而 fragment 数量较多的方式将应用程序转换为 fragment 。例如,有一个加载第一个 fragment 的 Home Activity,并且与应用程序的进一步交互通过 fragment 事务不断加载/切换 fragment 以用于不同目的。只有当我达到 Fragments 的限制时,我才会产生一个新的 Activity。
    对提高速度有帮助吗?

  • 以一种方式分解 UI,一旦 Activity 启动,最基本的 UI 就会加载到 View 中,而所有其他 UI 元素都在后台线程 (AsyncTask) 中膨胀,并且然后被添加到当前 View 的根。

在不同的意见中,哪种方法会更好?
有没有更好的或标准的方法来解决这个问题?

感谢所有的投入。提前致谢!

最佳答案

这里有一些关于您已经要做的事情的更多建议。

  1. 如果您在 onCreate() 方法中注入(inject) View ,请确保您使用设计时注入(inject)框架(Bufferknife 或 AndroidAnnotations)而不是运行时注入(inject)框架(Guice、RoboGuice)。运行时框架肯定会减慢启动时间。

  2. 如果您有最初对用户不可见的 View ,您可以使用 ViewStub并按需加载它们。

关于android - 改善重型布局的加载时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21424571/

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