Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2676170
  • 博文数量: 877
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 5921
  • 用 户 组: 普通用户
  • 注册时间: 2013-12-05 12:25
个人简介

技术的乐趣在于分享,欢迎多多交流,多多沟通。

文章分类

全部博文(877)

文章存档

2021年(2)

2016年(20)

2015年(471)

2014年(358)

2013年(26)

分类: iOS平台

2015-10-26 16:00:08


http://blog.csdn.net/huifeidexin_1/article/details/8586762

1.在AppDelegate中添加如下代码:


  (1)  self.window.rootViewController = self.iNavController;

   (2)//    [self.window addSubview:self.iNavController.view];

在iOS6.0 中只能使用(1)方法,如果使用(2)再去设置屏幕旋转会不起作用的。iOS6.0以下则不会出现上述问题。


2.屏幕旋转

(1)将屏幕旋转统一写到rootViewController中。例如:上面(1)中rootViewController是UINavigationController,则将旋转写到

UINavigationController中。为UINavigationController添加类别,代码如下:


- (BOOL) shouldAutorotate

{

    //全部调用self.topViewController,就是返回当前呈现出来的viewController里面的设置

    return self.topViewController.shouldAutorotate;

}

- (NSUInteger)supportedInterfaceOrientations

{

    return self.topViewController.supportedInterfaceOrientations;

}

(2)支持全部方向的旋转

iOS6.0需要下面三个方法,代码如下:


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation

{

    return (toInterfaceOrientation != UIInterfaceOrientationMaskPortraitUpsideDown);

}

- (BOOL)shouldAutorotate

{

    return YES;

}

- (NSUInteger)supportedInterfaceOrientations

{

    return UIInterfaceOrientationMaskAllButUpsideDown;

}

(3)禁止屏幕旋转


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation

{

    return (toInterfaceOrientation == UIInterfaceOrientationPortrait);

}

- (BOOL)shouldAutorotate

{

    return NO;

}

- (NSUInteger)supportedInterfaceOrientations

{

    return UIInterfaceOrientationMaskPortrait;//只支持这一个方向(正常的方向)

}

阅读(969) | 评论(0) | 转发(0) |
0

上一篇:iOS 屏幕旋转问题

下一篇:How to use GitHub

给主人留下些什么吧!~~