自定义UIView踩过的坑

1.要重写UIView的initWithFrame:方法而不是init方法

当初始化时重写了init方法,而调用了initWithFrame初始化UIView就是无用的。
当初始化时重写了initWithFrame方法,无论调用init还是initWithFrame都没有问题。
因为init方法会饮食的调用initWithFrame方法

2.tableView的自定义cell初始化方法中不要布局

因为这时是取不到真实frame的,会是默认的{320,44},
那么在哪里布局呢
重写layoutSubviews方法

- (void)layoutSubviews {
    // 一定要调用super的方法
    [super layoutSubviews];
    //布局
}

3.新手慎用懒加载

好多时候出现一些bug就是由于这个东西,不是_object写成了self.object就是if(!_object)写成了if(_object),导致发生一些我们不想要的结果。

猜你喜欢

转载自blog.csdn.net/qq_39551390/article/details/81412694