天天看点

自定义UIView控件注意事项

iOS的控件基类是UIView,要自定义,需要重写:

- (id)initWithFrame: (CGRect) frame //依照Frame建立新的View,建立出來的View要通过addSubview加入到父View中。

-(void)drawRect:(CGRect)rect //自画,永远不要直接调用drawRect,而要通过 [self setNeedDisplay],由系统再去异步调用drawRect。并且必须在主线程中调用。

自定义UIView不能使用nib文件设计界面,必须在程序中用代码创建各个控件,否则即使在主线程中调用setNeedDisplay也是不起作用。