IOS开发-使用autolatout后如何正确获取view的frame

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhaolaoda2012/article/details/53375665

假设自定义一个tableview cell,添加加了约束以后,该如何获取到约束更新后,正确的frame,只要重写layoutsubviews这个系统方法,代码如下:

- (void)layoutSubviews
{
    [super layoutSubviews];

    [self.contentView setNeedsLayout];
    [self.contentView layoutIfNeeded];

          NSLog(@"%@",NSStringFromCGRect(self.avatarView.frame));


    //NSLog(@"1111%@-%@",NSStringFromCGRect(self.avatarView.frame),NSStringFromCGRect(self.avatarView.bounds));
}

如果是在viewcontroller里面,想获取正确的frame,可以调用viewcontroller的系统方法:

- (void)viewDidLayoutSubviews
{
    [super viewDidLayoutSubviews];
}

猜你喜欢

转载自blog.csdn.net/zhaolaoda2012/article/details/53375665