jjccx

jjccx's blog
posts - 31, comments - 97, trackbacks - 5, articles - 70
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

如何切换程序UI方向为横屏或竖屏[转]

Posted on 2007-08-03 11:49 jjccx 阅读(752) 评论(0)  编辑 收藏

如何切换程序UI方向为横屏或竖屏

From Forum Nokia Wiki

设备, 软件 版本:

S60 3rd Edition

S60 3rd Edition, FP1


详细描述:

缺省情况下,程序是根据手机屏幕的当前方向开始启动的。如果要强制程序以横屏或竖屏的模式启动,那我们在CAknAppUi::ConstructL()方法中调用BaseConstructL()时就要传递相应的flag值:

void CMyAppUi::ConstructL()
{
BaseConstructL( EAknEnableSkin | EAppOrientationLandscape );    // start in landscape mode
...
}


如果要在程序运行期间改变方向,则需要调用:

void CAknAppUiBase::SetOrientationL( TAppUiOrientation aOrientation );


这里的参数为EAppUiOrientationLandscape和EAppUiOrientationPortrait,注意这种情况下的调用就不要再向BaseConstructL()中传递相同的参数了。

注意

  • 横屏(landscape),前者是横幅,一般多用在风景照,所以叫"landscape"。
  • 竖屏(portrait),后者是直幅,一般多用在肖像上,所以叫"portrait"。