我需要在Storm(和Strom 2)设备上以纵向模式锁定我的应用程序。
我为此使用了Ui.getUiEngineInstance().setAcceptableDirections(Display.DIRECTION_PORTRAIT);
。
问题在于:
屏幕方向仅更改一次 将设备旋转到一个方向 由提供的方向支持 参数。
(source)
如果用户将设备置于横向模式并打开应用程序,则应用程序将以横向打开,并且只有当用户将设备旋转到纵向模式时才会锁定到纵向模式。
即使在我上面描述的情况下,有没有办法强制应用程序处于纵向模式?
答案 0 :(得分:2)
我制作了一个静态方法,我从应用程序的main()
方法调用。
请参阅我对此问题的回答中的完整代码:How to fix alignment for vertical and portrait screen in BlackBerry?
答案 1 :(得分:0)
可以通过创建一个扩展MainScreen类的自定义类来解决它,该类接受nextScreenObject作为构造函数中的参数
然后使用
UiApplication.getUiApplication.pushModalScreen(nextScreenObj); //这会锁定屏幕
因此,每当您按任意屏幕创建此自定义类的对象并将屏幕对象作为参数发送到此构造函数时
例如:让NewCustomClass成为扩展MainScreen的自定义类 然后在推新屏幕的同时
NextScreen nextScreenObj = new NextScreen(.. args ..); NewCustomClass pushObj = new NewCustomClass(nextScreenObj);
让我知道问题是否已解决。