我有一个UIImageView,在图片加载之前设置了它的frame,但它的大小总是比图片大,因此当我尝试将其圆角化时,什么也不会发生。
我该如何调整frame的大小,使其与底层图片大小相同,同时确保UIImageView的中心点不改变?
我有一个UIImageView,在图片加载之前设置了它的frame,但它的大小总是比图片大,因此当我尝试将其圆角化时,什么也不会发生。
我该如何调整frame的大小,使其与底层图片大小相同,同时确保UIImageView的中心点不改变?
如果您更改UIView的边界,其中心将不会更改。
CGRect bounds;
bounds.origin = CGPointZero;
bounds.size = newImage.size;
imageView.bounds = bounds;
imageView.image = newImage;
CGSize imageSize = image.Size;
CGPoint oldCenter = imageView.center;
// now do some calculations to calculate the new frame size
CGRect rect = CGRectMake(0, 0, imageSize.width, imageSize.height);
imageView.frame = rect;
imageView.center = oldCenter;