Ios 6和ios7的适配

Ios 6ios7的适配

1.普通的 ViewController:view的显示从状态栏下面开始,只需在viewDidLayoutSubviews调整 viewbounds        

CGRect bounds = self.view.bounds;

  bounds.origin.y =  - [self.topLayoutGuide length];

self.view.bounds = bounds;

 

2.ScrollView 类型的 在viewDidLoad 里面加:

if ([[UIDevice currentDevice].systemVersion floatValue] >= 7.0) {

        self.tableView.contentInset = UIEdgeInsetsMake(20, 0, 0, 0);

}

 

3.有导航控制器的普通ViewController:viewDidLoad里面加

#ifdef __IPHONE_7_0

    if ([[UIDevice currentDevice].systemVersion floatValue] >= 7.0) {

        self.edgesForExtendedLayout = UIRectEdgeNone;

    }

#endif

 

4.有导航控制器的UITableViewController不用适配,他会自动在导航控制器的下面

 

5.有选项卡的ViewController:ViewDidLoad里面加:

#ifdef __IPHONE_7_0

    if ([[UIDevice currentDevice].systemVersion floatValue] >= 7.0) {

        self.edgesForExtendedLayout = UIRectEdgeNone;

    }

#endif

 

6.有选项卡的UITableViewControllerViewDidLoad里面加:

#ifdef __IPHONE_7_0

    if ([[UIDevice currentDevice].systemVersion floatValue] >= 7.0) {

        self.edgesForExtendedLayout = UIRectEdgeNone;

        self.tableView.contentInset = UIEdgeInsetsMake(20, 0, 0, 0);

    }

#endif

 

7.有导航控制器和有选项卡的UITableViewController不用适配,他会自动在2者的中间

8.有导航控制器和有选项卡的ViewController不用适配,他会自动在2者的中间

 

 

 

 

 

 

Ios6 ios7屏幕翻转

1.在UIViewController里面添加

- (BOOL)shouldAutorotate{

    return YES;

}

 

- (NSUInteger)supportedInterfaceOrientations{

    return UIInterfaceOrientationMaskPortraitUpsideDown;

}

 

设置方向后不是真正显示的UIViewController  presentViewController 出现视图看不到的情况

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。