关闭

如何修正iOS6上Oritentation的问题

标签: ios手机
2955人阅读 评论(2) 收藏 举报
分类:

1.将addSubview修改为setRootViewController

[window addSubview: viewController.view];
修改如下:

if ( [[UIDevice currentDevice].systemVersion floatValue] < 6.0)
{
    // warning: addSubView doesn't work on iOS6
    [window addSubview: viewController.view];
}
else
{
    // use this mehod on ios6
    [window setRootViewController:viewController];
}

2.修改shouldAutorotateToInterfaceOrientation

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{
    return UIInterfaceOrientationIsLandscape( interfaceOrientation );
}

iOS6以前会呼叫这方法来判断手机是垂直或打横

// For ios6, use supportedInterfaceOrientations & shouldAutorotate instead of shouldAutorotateToInterfaceOrientation
- (NSUInteger) supportedInterfaceOrientations{
    return UIInterfaceOrientationMaskLandscape;
}

- (BOOL) shouldAutorotate {
    return YES;
}

iOS6需在加上上面方法


4
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:681964次
    • 积分:8155
    • 等级:
    • 排名:第2569名
    • 原创:150篇
    • 转载:19篇
    • 译文:3篇
    • 评论:381条
    文章分类
    最新评论