小编Tak*_*ano的帖子

UIView类别用于直接设置原点和大小

我是iPhone应用程序编程的初学者.
我真的不喜欢我们设置起源和尺寸的方式,如:

UIView *view;  
CGRect frame = view.frame;  
frame.origin.x = 100;  
view.frame = frame;  
Run Code Online (Sandbox Code Playgroud)

要么:

UIView *view;  
view.frame = CGRectMake(100, view.frame.origin.y, view.frame.size.width, view.frame.size.height);  
Run Code Online (Sandbox Code Playgroud)

所以我为UIView创建了一个类别:

@interface UIView (Origin)  
-(void) setOriginX:(CGFloat)x;  
-(void) setOriginY:(CGFloat)y;  
-(void) setOriginX:(CGFloat)x y:(CGFloat)y;  
-(void) setWidth:(CGFloat)w;  
-(void) setHeight:(CGFloat)h;  
-(void) setWidth:(CGFloat)w height:(CGFloat)h;  
@end  

@implementation UIView(Origin)  
-(void) setOriginX:(CGFloat)x {  
  self.frame = CGRectMake(x, self.frame.origin.y, self.frame.size.width, self.frame.size.height);  
}  
...  
@end  
Run Code Online (Sandbox Code Playgroud)

然后我可以写:

UIView *view;  
[view setOriginX 100];  
Run Code Online (Sandbox Code Playgroud)

这对我来说很方便,但是有什么顾虑我不应该做这样的事情,或者直接设置起源/尺寸的任何更简单的方法吗?

iphone uiview categories ios

4
推荐指数
1
解决办法
3365
查看次数

标签 统计

categories ×1

ios ×1

iphone ×1

uiview ×1