没有图像的Autolayout UIImageView

Pet*_*isu 5 cocoa-touch uiimageview ios autolayout

我有一个UIImageView,带有缩放中心,所以它的大小根据UIImage内部而变化,但是,通过设置一个nil UIImage,约束会中断,因为没有内容大小可以计算

如何使用nil UIImage处理autolayout(大小应该更改为0,0)?

Nik*_*nko 16

问题是UIImageView当没有设置图像时返回{-1,-1}作为intrinsicContentSize.使用UIImageView带有如下实现的子类:

@implementation MyImageView

- (CGSize)intrinsicContentSize
{
    if (self.image)
    {
        return [super intrinsicContentSize];
    }

    return CGSizeZero;
}

@end
Run Code Online (Sandbox Code Playgroud)


Yev*_*nin 12

@尼基塔- ivaniushchenko的回答给了我一个想法,以补充Width与约束Low (250)优先等于0UIImageView,所以当它被应用UIImage设置为nil.

故事板UIImage约束示例

注意:我Width只添加了约束,因为UIImageView在我的情况下只有问题的宽度.但是应该适用于两者.


归档时间:

查看次数:

2810 次

最近记录:

10 年,1 月 前