2

我正在使用 Momentics IDE 2.1.2(本机 SDK)开发 BlackBerry 10 移动应用程序。

让我们从我用于布局的“方向处理程序”的示例开始:

            attachedObjects: [
                    OrientationHandler {
                        id: handler

                    onOrientationAboutToChange: {

                        if (orientation == UIOrientation.Landscape) {

                            mainContainer.sideMenuLarge = ui.sdu(80.0)

                            mainEntryHeaderContainer.layoutProperties.spaceQuota = 1.6
                            mainEntryBodyContainer.layoutProperties.spaceQuota = 5.8

                        } else {

                            mainContainer.sideMenuLarge = ui.sdu(60.0)

                            mainEntryHeaderContainer.layoutProperties.spaceQuota = 1
                            mainEntryBodyContainer.layoutProperties.spaceQuota = 7.4
                        }
                    }
                }
            ]

如您所见,当应用程序以纵向模式启动时,一切都很酷,这应该是因为所有 Controls Paddings和 Containers SpaceQuota的东西都使用与纵向模式兼容的值进行了初始化,但是当它以横向模式启动时,它是不同的是,它将采用纵向模式的初始值,直到我切换到纵向模式,然后将其返回到横向模式。

我怎样才能解决这个问题 ?我可以在 1 个导航窗格中有 2 个页面,其中包含不同的“OrientationSupport”吗?我试过了,但它不起作用;例如,我在横向模式下的第 1 页,然后打开仅支持纵向模式的第 2 页,它切换到纵向,但是当我回到上一页时,OrientationSupport将固定为纵向模式(它不不再处理横向模式)

第 1 页:

OrientationSupport.supportedDisplayOrientation = SupportedDisplayOrientation.All

第2页:

OrientationSupport.supportedDisplayOrientation = SupportedDisplayOrientation.DisplayPortrait
4

0 回答 0