本文共 1243 字,大约阅读时间需要 4 分钟。
引言 在手机上控制横竖屏显示是应用程序经常要遇到的问题。由于在 Meego 上原来的setOrientation(MainWindow::ScreenOrientationLockLandscape) 以及 ScreenOrientationLockPortrait,ScreenOrientationAuto等已经不起作用了(并且 QWidget 在 Meego 上也已经不是主要支持对象了)。取而代之的是一套 QML Component 的实现方式。 本文就向大家介绍如何在 Meego 上控制横竖屏。 具体步骤 首先开发 Meego 程序需要安装 Meego 自己的 SDK,Meego SDK和 Qt SDK 的功能基本是差不多的,只不过它是专门用于开发 Meego 应用程序的。 首先新建一个Qt Quick Project -> Harmattan application。 目前新的Qt Component中有一个Page Element,它有一个 orientationLock 属性,这就是我们锁屏所用到的关键点,它具体包含有4个值 PageOrientation.Automatic (default) PageOrientation.LockPortrait PageOrientation.LockLandscape PageOrientation.LockPrevious 分别是用于自动旋转,锁定竖屏,锁定横屏和保持之前屏幕状态的。 下面是main.qml import QtQuick 1.1 import com.meego 1.0 PageStackWindow{ id: appWindow initialPage: MyOrientationPage{} } PageStackWindow是用于管理页面的,最初呈现在用户面前的是initialPage。 我们看下MyOrientationPage也就是initialPage是怎么写的: import QtQuick 1.1 import com.meego 1.0 Page { id: orientationModePage Text { anchors.centerIn: parent id: mytext text: "Hello PageOrientation.LockPortrait" font.pixelSize: 20 } Component.onCompleted: { orientationModePage.orientationLock = PageOrientation.LockPortrait } } 这个例子是把应用程序强制锁成竖屏状态,在页面创建之后将其orientationLock 赋值为 PageOrientation.LockPortrait。 转载于:https://my.oschina.net/birdlovecloud/blog/339313