MASExampleSafeAreaLayoutGuideViewController.m 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. //
  2. // MASExampleSafeAreaLayoutGuideViewController.m
  3. // Masonry iOS Examples
  4. //
  5. // Created by MingLQ on 2017-09-27.
  6. // Copyright © 2017 MingLQ. All rights reserved.
  7. //
  8. #import "MASExampleSafeAreaLayoutGuideViewController.h"
  9. @interface MASExampleSafeAreaLayoutGuideViewController ()
  10. @end
  11. @implementation MASExampleSafeAreaLayoutGuideViewController
  12. - (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
  13. self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
  14. if (self) {
  15. self.title = @"Safe Area Layout Guides";
  16. }
  17. return self;
  18. }
  19. - (void)viewDidLoad {
  20. [super viewDidLoad];
  21. self.view.backgroundColor = [UIColor whiteColor];
  22. UIView *view1 = [UIView new];
  23. view1.backgroundColor = [UIColor redColor];
  24. [self.view addSubview:view1];
  25. UIView *view2 = [UIView new];
  26. view2.backgroundColor = [UIColor greenColor];
  27. [self.view addSubview:view2];
  28. UIView *view3 = [UIView new];
  29. view3.backgroundColor = [UIColor blueColor];
  30. [self.view addSubview:view3];
  31. UIView *leftView = [self viewWithName:@"LY"];
  32. UIView *rightView = [self viewWithName:@"RY"];
  33. UIView *topView = [self viewWithName:@"TX"];
  34. UIView *bottomView = [self viewWithName:@"BX"];
  35. UIView *leftTopView = [self viewWithName:@"LT"];
  36. UIView *rightTopView = [self viewWithName:@"RT"];
  37. UIView *leftBottomView = [self viewWithName:@"LB"];
  38. UIView *rightBottomView = [self viewWithName:@"RB"];
  39. UIView *centerView = [self viewWithName:@"XY"];
  40. const CGFloat size = 50.0;
  41. [view1 mas_makeConstraints:^(MASConstraintMaker *make) {
  42. make.edges.equalTo(self.view.mas_safeArea).inset(10.0);
  43. }];
  44. [view2 mas_makeConstraints:^(MASConstraintMaker *make) {
  45. make.center.equalTo(self.view.mas_safeArea);
  46. make.width.height.equalTo(self.view.mas_safeArea).sizeOffset(CGSizeMake(- 40.0, - 40.0));
  47. }];
  48. [view3 mas_makeConstraints:^(MASConstraintMaker *make) {
  49. make.center.equalTo(self.view.mas_safeArea);
  50. make.width.equalTo(self.view.mas_safeArea).sizeOffset(CGSizeMake(- 60.0, - 60.0));
  51. make.height.equalTo(self.view.mas_safeArea).sizeOffset(CGSizeMake(- 60.0, - 60.0));
  52. }];
  53. [leftTopView mas_makeConstraints:^(MASConstraintMaker *make) {
  54. make.left.top.equalTo(self.view.mas_safeArea);
  55. make.width.height.equalTo(@(size));
  56. }];
  57. [rightTopView mas_makeConstraints:^(MASConstraintMaker *make) {
  58. make.right.equalTo(self.view.mas_safeAreaRight);
  59. make.top.equalTo(self.view.mas_safeAreaTop);
  60. make.width.height.equalTo(@(size));
  61. }];
  62. [leftBottomView mas_makeConstraints:^(MASConstraintMaker *make) {
  63. make.left.equalTo(self.view.mas_safeAreaLeft);
  64. make.bottom.equalTo(self.view.mas_safeAreaBottom);
  65. make.width.height.equalTo(@(size));
  66. }];
  67. [rightBottomView mas_makeConstraints:^(MASConstraintMaker *make) {
  68. make.right.bottom.equalTo(self.view.mas_safeArea);
  69. make.width.height.equalTo(@(size));
  70. }];
  71. [leftView mas_makeConstraints:^(MASConstraintMaker *make) {
  72. make.left.centerY.equalTo(self.view.mas_safeArea);
  73. make.width.height.equalTo(@(size));
  74. }];
  75. [rightView mas_makeConstraints:^(MASConstraintMaker *make) {
  76. make.right.equalTo(self.view.mas_safeAreaRight);
  77. make.centerY.equalTo(self.view.mas_safeAreaCenterY);
  78. make.width.height.equalTo(@(size));
  79. }];
  80. [topView mas_makeConstraints:^(MASConstraintMaker *make) {
  81. make.top.equalTo(self.view.mas_safeAreaTop);
  82. make.centerX.equalTo(self.view.mas_safeAreaCenterX);
  83. make.width.height.equalTo(@(size));
  84. }];
  85. [bottomView mas_makeConstraints:^(MASConstraintMaker *make) {
  86. make.bottom.centerX.equalTo(self.view.mas_safeArea);
  87. make.width.height.equalTo(@(size));
  88. }];
  89. [centerView mas_makeConstraints:^(MASConstraintMaker *make) {
  90. make.center.equalTo(self.view.mas_safeArea);
  91. make.width.height.equalTo(@(size));
  92. }];
  93. }
  94. - (UIView *)viewWithName:(NSString *)name {
  95. UILabel *label = [UILabel new];
  96. label.text = name;
  97. label.textAlignment = NSTextAlignmentCenter;
  98. label.textColor = [UIColor blackColor];
  99. label.backgroundColor = [UIColor yellowColor];
  100. [self.view addSubview:label];
  101. return label;
  102. }
  103. @end