UIView+frame.m 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. //
  2. // UIView+frame.m
  3. // SmartLightForBigFish
  4. //
  5. // Created by coderYK on 2017/8/9.
  6. // Copyright © 2017年 RD-iOS. All rights reserved.
  7. //
  8. #import "UIView+frame.h"
  9. @implementation UIView (frame)
  10. -(CGFloat)rds_x
  11. {
  12. return self.frame.origin.x;
  13. }
  14. -(CGFloat)rds_y
  15. {
  16. return self.frame.origin.y;
  17. }
  18. -(CGFloat)rds_width
  19. {
  20. return self.frame.size.width;
  21. }
  22. -(CGFloat)rds_height
  23. {
  24. return self.frame.size.height;
  25. }
  26. -(void)setRds_x:(CGFloat)rds_x
  27. {
  28. CGRect frame = self.frame;
  29. frame.origin.x = rds_x;
  30. self.frame = frame;
  31. }
  32. -(void)setRds_y:(CGFloat)rds_y
  33. {
  34. CGRect frame = self.frame;
  35. frame.origin.y = rds_y;
  36. self.frame = frame;
  37. }
  38. -(void)setRds_width:(CGFloat)rds_width
  39. {
  40. CGRect frame = self.frame;
  41. frame.size.width = rds_width;
  42. self.frame = frame;
  43. }
  44. -(void)setRds_height:(CGFloat)rds_height
  45. {
  46. CGRect frame = self.frame;
  47. frame.size.height = rds_height;
  48. self.frame = frame;
  49. }
  50. -(void)setRds_centerX:(CGFloat)rds_centerX
  51. {
  52. CGPoint center = self.center;
  53. center.x = rds_centerX;
  54. self.center = center;
  55. }
  56. -(CGFloat)rds_centerX
  57. {
  58. return self.center.x;
  59. }
  60. -(void)setRds_centerY:(CGFloat)rds_centerY
  61. {
  62. CGPoint center = self.center;
  63. center.y = rds_centerY;
  64. self.center = center;
  65. }
  66. -(CGFloat)rds_centerY
  67. {
  68. return self.center.y;
  69. }
  70. - (CGFloat)rds_right {
  71. return self.frame.origin.x + self.frame.size.width;
  72. }
  73. - (void)setRds_right:(CGFloat)rds_right {
  74. CGRect frame = self.frame;
  75. frame.origin.x = rds_right - frame.size.width;
  76. self.frame = frame;
  77. }
  78. - (CGFloat)rds_bottom {
  79. return self.frame.origin.y + self.frame.size.height;
  80. }
  81. - (void)setRds_bottom:(CGFloat)rds_bottom {
  82. CGRect frame = self.frame;
  83. frame.origin.y = rds_bottom - frame.size.height;
  84. self.frame = frame;
  85. }
  86. - (CGPoint)rds_origin {
  87. return self.frame.origin;
  88. }
  89. - (void)setRds_origin:(CGPoint)rds_origin {
  90. CGRect frame = self.frame;
  91. frame.origin = rds_origin;
  92. self.frame = frame;
  93. }
  94. - (CGSize)rds_size {
  95. return self.frame.size;
  96. }
  97. - (void)setRds_size:(CGSize)rds_size {
  98. CGRect frame = self.frame;
  99. frame.size = rds_size;
  100. self.frame = frame;
  101. }
  102. + (CGFloat)rds_statusBarHeight{
  103. CGFloat statusBarHeight = 0;
  104. if (@available(iOS 13.0, *)) {
  105. statusBarHeight = [UIApplication sharedApplication].windows.firstObject.windowScene.statusBarManager.statusBarFrame.size.height;
  106. } else {
  107. statusBarHeight = [UIApplication sharedApplication].statusBarFrame.size.height;
  108. }
  109. return statusBarHeight;
  110. }
  111. + (CGFloat)rds_tabBarHeight{
  112. CGFloat tabBarHeight = [UIView rds_statusBarHeight] > 20? 83:49;
  113. return tabBarHeight;
  114. }
  115. - (void)removeAllSubviews {
  116. while (self.subviews.count) {
  117. UIView* child = self.subviews.lastObject;
  118. [child removeFromSuperview];
  119. }
  120. }
  121. @end