Namespaces

Variants
Actions

Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.

在Meego上控制横竖屏

From 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 01:19.
202 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×