UIView+CWChat.m 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. //
  2. // UIView+CWChat.m
  3. // CWChatDemo
  4. //
  5. // Created by chavez on 2017/8/10.
  6. // Copyright © 2017年 chavez. All rights reserved.
  7. //
  8. #import "UIView+CWChat.h"
  9. @implementation UIView (CWChat)
  10. - (CGFloat)cw_left {
  11. return self.frame.origin.x;
  12. }
  13. - (void)setCw_left:(CGFloat)x {
  14. CGRect frame = self.frame;
  15. frame.origin.x = x;
  16. self.frame = frame;
  17. }
  18. - (CGFloat)cw_top {
  19. return self.frame.origin.y;
  20. }
  21. - (void)setCw_top:(CGFloat)y {
  22. CGRect frame = self.frame;
  23. frame.origin.y = y;
  24. self.frame = frame;
  25. }
  26. - (CGFloat)cw_right {
  27. return self.frame.origin.x + self.frame.size.width;
  28. }
  29. - (void)setCw_right:(CGFloat)right {
  30. CGRect frame = self.frame;
  31. frame.origin.x = right - frame.size.width;
  32. self.frame = frame;
  33. }
  34. - (CGFloat)cw_bottom {
  35. return self.frame.origin.y + self.frame.size.height;
  36. }
  37. - (void)setCw_bottom:(CGFloat)bottom {
  38. CGRect frame = self.frame;
  39. frame.origin.y = bottom - frame.size.height;
  40. self.frame = frame;
  41. }
  42. - (CGFloat)cw_centerX {
  43. return self.center.x;
  44. }
  45. - (void)setCw_centerX:(CGFloat)centerX {
  46. self.center = CGPointMake(centerX, self.center.y);
  47. }
  48. - (CGFloat)cw_centerY {
  49. return self.center.y;
  50. }
  51. - (void)setCw_centerY:(CGFloat)centerY {
  52. self.center = CGPointMake(self.center.x, centerY);
  53. }
  54. - (CGFloat)cw_width {
  55. return self.frame.size.width;
  56. }
  57. - (void)setCw_width:(CGFloat)width {
  58. CGRect frame = self.frame;
  59. frame.size.width = width;
  60. self.frame = frame;
  61. }
  62. - (CGFloat)cw_height {
  63. return self.frame.size.height;
  64. }
  65. - (void)setCw_height:(CGFloat)height {
  66. CGRect frame = self.frame;
  67. frame.size.height = height;
  68. self.frame = frame;
  69. }
  70. - (CGPoint)cw_origin {
  71. return self.frame.origin;
  72. }
  73. - (void)setCw_origin:(CGPoint)origin {
  74. CGRect frame = self.frame;
  75. frame.origin = origin;
  76. self.frame = frame;
  77. }
  78. - (CGSize)cw_size {
  79. return self.frame.size;
  80. }
  81. - (void)setCw_size:(CGSize)size {
  82. CGRect frame = self.frame;
  83. frame.size = size;
  84. self.frame = frame;
  85. }
  86. - (UIViewController *)cw_viewController{
  87. for (UIView* next = self; next; next = next.superview) {
  88. UIResponder* nextResponder = [next nextResponder];
  89. if ([nextResponder isKindOfClass:[UIViewController class]]) {
  90. return (UIViewController*)nextResponder;
  91. }
  92. }
  93. return nil;
  94. }
  95. @end