微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – QML中的多页面应用程序

我被要求为客户创建一个应用程序,它可能同时适用于 Android和iOS(首先专注于iOS).所以我认为Qt可能就是答案.我想使用Qt Quick创建应用程序,但我似乎找不到有效处理多个页面方法,请记住每个页面可能相当重量级.

到目前为止,我已经尝试过:

>使用加载器分页,即动态拉入所需的屏幕.这有效但第一次加载屏幕时会有明显的延迟
>使每个页面成为一个组件,只显示必要的屏幕.这会在启动时加载所有页面,因为内存太重
>使每个页面成为一个组件并通过ListView显示它们.与上述问题相同.

必须有一个中间立场,在本地iOS应用程序中,视图基本上可以进入低内存模式.欢迎任何建议.

注意:屏幕的进展不一定是线性的

解决方法

我对QML的体验相当有限,但从其他用户体验经验来看,我认为该解决方案将涉及重新分解您的页面以将 Loader项目用于其内部子项/组件.从我读到的内容听起来就像你在每个页面上使用 Loader项目.

例如,当您的程序在您的页面中开始加载时,它应该在内存上相当轻,否则许多仍然是需要动态加载的大型组件.

用户提供输入以转到特定页面时,动画/显示通常不应该延迟.然后,页面本身应该为每个需要加载的组件使用Loader项(即具有大内存占用的组件).

在加载组件时,您可以显示进度条/滚轮动画.组件通过onLoaded signal完成加载后,您可以隐藏进度条/滚轮.

您可能还需要查看Loader项目的asynchronous property以确保在组件加载时的任何动画(即进度条/滚轮)避免毛刺.

最后,当需要隐藏页面时,只需将每个Loader项目的active property设置为false,它应该释放加载的组件.

希望有帮助,而不是重复你已经尝试过的东西.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐