我有一个配置了自动布局的UI
ImageView对象.我创建了约束,使视图与其超级视图保持不变的距离.在视觉格式下,就像:
@"V:|-[imageView]-|" @"H:|-[imageView]-|"
但是我也想保留底层图像的宽高比,所以我已经将UIViewContentModeScaleAspectFit分配给contentMode.
我认为一切都很好,直到我设置了相关CALayer的cornerRadius值:
self.imageView.layer.cornerRadius = 7; self.imageView.layer.maskToBounds = YES;
现在当图像视图被调整大小时,例如由于方向改变,取决于视图获取的新尺寸,圆角会丢失.原因是cornerRadius适用于UIImageView(下面的破折号框),但是由于底层映像也被调整大小以符合contentMode(下面的星号中的框架),所以圆角不再可见:
-------------------------- | ********** | | * * | | * * | | * * | | ********** | --------------------------
有办法防止这种行为吗?