gpt4 book ai didi

blackberry - 显示屏幕时这两种方法之间的区别?

转载 作者:行者123 更新时间:2023-12-01 12:55:42 24 4
gpt4 key购买 nike

在 BlackBerry 开发中(我说的是 BB OS 6+),如果我想在单击按钮时显示另一个屏幕,我发现我可以使用以下任何一种方法来实现:

getScreen().getUiEngine().pushScreen(new MyScreen());

和,

UiApplication.getUiApplication.pushScreen(new MyScreen());

以上两种方法都成功显示了新的MyScreen 屏幕。但这两者有什么区别呢?或者它们是一样的?

注意:我特别想问的是它们的行为是否不同(在资源上)以及它们处理方法调用的方式是否相同。它们对最终用户有什么明显的影响吗?

谢谢。

最佳答案

第一种方法会将屏幕推送到与“拥有”包含该字段的屏幕的应用程序关联的堆栈上(我假设您正在调用 Field.getScreen()...)。

第二种方法会将屏幕推送到“拥有”执行 UiApplication.getUiApplication() 的线程的应用程序的堆栈上...

除非你在做一些复杂的后台处理或者通过ApplicationMenus或者一些监听器与系统应用交互。

主要影响是在每种情况下可以访问哪些资源。如果您使用应用程序范围的单例,这些差异最终会影响您的程序。这是 RIM 建议使用 RuntimeStore 或 PersistentStore 使用系统范围单例的原因之一。

我开发特定程序的经验对我有帮助:http://www.hrbuckley.net/2012/03/blackberrry-singletons-application.html

关于blackberry - 显示屏幕时这两种方法之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9938994/

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