您的位置:首页 > 移动开发 > IOS开发

iOS(学习6) 横竖屏

2016-02-20 22:43 274 查看
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];
UIView *view1 = [[UIView alloc]init];
view1.backgroundColor = [UIColor yellowColor];
view1.tag = 1000;
[self.view addSubview:view1];
view1.translatesAutoresizingMaskIntoConstraints = NO;

//约束
NSLayoutConstraint *constraint1 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeLeading relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeLeading multiplier:1 constant:20];

NSLayoutConstraint *constraint2 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeTrailing relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTrailing multiplier:1 constant:-20];

NSLayoutConstraint *constraint3 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1 constant:20];

NSLayoutConstraint *constraint4 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeHeight multiplier:0.5 constant:0];

[self.view addConstraint:constraint1];
[self.view addConstraint:constraint2];
[self.view addConstraint:constraint3];
[self.view addConstraint:constraint4];
}

//检查 是否支持横竖屏
- (BOOL)shouldAutorotate {
return YES;
}

//支持几种朝向
- (UIInterfaceOrientationMask) supportedInterfaceOrientations {
return  UIInterfaceOrientationMaskAll;
}

- (void)viewWillLayoutSubviews {
[super viewWillLayoutSubviews];

/*
UIDeviceOrientationUnknown,            //无法确定的方向
UIDeviceOrientationPortrait,            // Device oriented vertically, home button on the bottom
UIDeviceOrientationPortraitUpsideDown,  // Device oriented vertically, home button on the top
UIDeviceOrientationLandscapeLeft,       // Device oriented horizontally, home button on the right
UIDeviceOrientationLandscapeRight,      // Device oriented horizontally, home button on the left
UIDeviceOrientationFaceUp,              // Device oriented flat, face up
UIDeviceOrientationFaceDown             // Device oriented flat, face down

*/

UIView *view1 = (UIView *)[self.view viewWithTag:1000];

switch ([UIDevice currentDevice].orientation) {
case UIDeviceOrientationPortrait:
{
view1.backgroundColor = [UIColor yellowColor];
NSLog(@"竖屏");
}
break;
case UIDeviceOrientationPortraitUpsideDown:
{
view1.backgroundColor = [UIColor cyanColor];
NSLog(@"竖屏UIDeviceOrientationPortraitUpsideDown");
}
break;
case UIDeviceOrientationLandscapeLeft:
case UIDeviceOrientationLandscapeRight:
{
view1.backgroundColor = [UIColor redColor];
NSLog(@"横屏");
}
break;
default:
break;
}
}

- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: