代号一:以横向和getDisplayWidth()方式启动人像应用>> [

问题描述 投票:1回答:1
我的应用程序只能以纵向运行,不能横向运行。对于iOS,这是一个正常工作的构建提示(ios.interface_orientation)。对于Android,必须在代码中使用lockOrientation(true)进行设置,我将其放在公共void init(Object context)中。锁定方向后,我在public void start()中调用getDisplayWidth()。当我在横向安装的Android设备上启动/测试应用程序时,遇到了问题。显然,切换方向需要时间,并且

有时

返回的显示宽度实际上是显示高度。我尝试在callSerially中使用getDisplayWidth()包装代码,但这无济于事。我也尝试调用getDisplayHeight()并同时取两个值中的最小值,但这是行不通的,因为如果将宽度作为高度返回,则会扣除状态栏的高度,最后我们得到一个显示“宽度”值,太小。 因此,1)我的初始表单(具有缩放到显示宽度的图像)首先被错误地显示-在等待下一个表单显示时已得到纠正,以及2)我的GUI有时使用了错误的显示宽度-因此不使用完整宽度。

我的问题是,当设备必须从横向调整为纵向时,如何在调用lockOrientation(true)之后确保获得正确的(纵向)显示宽度。

我的应用程序只能以纵向运行,不能横向运行。对于iOS,这是一个正常工作的构建提示(ios.interface_orientation)。对于Android,必须使用...

android width codenameone display landscape-portrait
1个回答
0
投票
我敢肯定还有很多其他的边缘情况会重现您错过的问题,例如多任务处理/并排视图等。即使锁定方向,显示尺寸也会改变。
© www.soinside.com 2019 - 2024. All rights reserved.