×
Namespaces

Variants
Actions

在Meego上控制横竖屏

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

代码示例
文章
zhouhl 在 17 Jun 2011 创建
最后由 hamishwillee 在 11 Oct 2012 编辑

Contents

引言

在手机上控制横竖屏显示是应用程序经常要遇到的问题。由于在 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。 详情请参考附件。

下载源码和样例程序

File:MeegoOrientation.zip

相关链接

This page was last modified on 11 October 2012, at 04:19.
70 page views in the last 30 days.
×