UIView+View.m 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. //
  2. // UIView+View.m
  3. //
  4. // Created by Darktt on 13/4/15.
  5. // Copyright (c) 2013 Darktt Personal Company. All rights reserved.
  6. //
  7. @implementation UIView (View)
  8. + (id)viewWithFrame:(CGRect)frame
  9. {
  10. UIView *view = [[UIView alloc] initWithFrame:frame];
  11. return view;
  12. }
  13. + (id)viewWithFrame:(CGRect)frame backgroundColor:(UIColor *)bgColor
  14. {
  15. UIView *view = [[UIView alloc] initWithFrame:frame];
  16. [view setBackgroundColor:bgColor];
  17. return view;
  18. }
  19. #pragma mark - Override Property Methods
  20. - (void)setOrigin:(CGPoint)origin
  21. {
  22. CGRect selfFrame = self.frame;
  23. selfFrame.origin = origin;
  24. [self setFrame:selfFrame];
  25. }
  26. - (CGPoint)origin
  27. {
  28. return self.frame.origin;
  29. }
  30. - (void)setSize:(CGSize)size
  31. {
  32. CGRect selfFrame = self.frame;
  33. selfFrame.size = size;
  34. [self setFrame:selfFrame];
  35. }
  36. - (CGSize)size
  37. {
  38. return self.frame.size;
  39. }
  40. - (void)setX:(CGFloat)x
  41. {
  42. CGRect selfFrame = self.frame;
  43. selfFrame.origin.x = x;
  44. [self setFrame:selfFrame];
  45. }
  46. - (CGFloat)x
  47. {
  48. return self.frame.origin.x;
  49. }
  50. - (void)setY:(CGFloat)y
  51. {
  52. CGRect selfFrame = self.frame;
  53. selfFrame.origin.y = y;
  54. [self setFrame:selfFrame];
  55. }
  56. - (CGFloat)y
  57. {
  58. return self.frame.origin.y;
  59. }
  60. - (void)setWidth:(CGFloat)width
  61. {
  62. CGRect selfFrame = self.frame;
  63. selfFrame.size.width = width;
  64. [self setFrame:selfFrame];
  65. }
  66. - (CGFloat)width
  67. {
  68. return self.frame.size.width;
  69. }
  70. - (void)setHeight:(CGFloat)height
  71. {
  72. CGRect selfFrame = self.frame;
  73. selfFrame.size.height = height;
  74. [self setFrame:selfFrame];
  75. }
  76. - (CGFloat)height
  77. {
  78. return self.frame.size.height;
  79. }
  80. - (void)setMaskedCorners:(CACornerMask)maskedCorners{
  81. self.layer.maskedCorners = maskedCorners;
  82. }
  83. #pragma mark - Instance Method
  84. - (void)addSubviews:(NSArray *)views
  85. {
  86. void (^enumBlock) (id, NSUInteger, BOOL *) = ^(UIView *view, NSUInteger index, BOOL *stop){
  87. if (![view isKindOfClass:[UIView class]]) {
  88. [NSException raise:NSInvalidArgumentException format:@"%@-line %d: %@ not UIView class.", [self class], __LINE__, view];
  89. }
  90. [self addSubview:view];
  91. };
  92. [views enumerateObjectsUsingBlock:enumBlock];
  93. }
  94. @end