[英]UIImageView doesn't resize itself to the UIImage it holds
我有一個帶有自動布局到容器邊距的UIImageView
。 我在 ViewController 中為它設置了一個UIImage
。 如果我使用UIViewContentModeScaleAspectFit
那么圖像會根據我的需要在屏幕中間居中,一切看起來都很棒,但是當我給UIImageView
一個背景顏色時,我可以看到它仍然一直蔓延到容器邊緣,並且沒有t 獲取圖像的比例和尺寸。 這是我的代碼:
UIImage *passedImage = [UIImage imageNamed:self.photoTitle];
CGRect imageBounds = CGRectMake(0, 0, passedImage.size.width, passedImage.size.height);
[self.imageView setImage:passedImage];
self.imageView.bounds = imageBounds;
self.imageView.contentMode = UIViewContentModeScaleAspectFit;
我已經嘗試了一切來修復它並到處尋找答案,請幫助我,你是我唯一的希望。
不要將圖像視圖的邊緣固定到容器邊緣,而是將其中心 X 和中心 Y 固定到容器的中心 X 和中心 Y。
這給出了相同的視覺效果——圖像居中——但讓圖像視圖可以根據其內容自由調整自身大小。
UIImageView 不會根據它呈現的圖像大小調整自身大小。 如果您需要相應地調整大小,則需要自己進行。 Matt 的回答是合理的,但您仍然需要在某個時候更新您的圖像視圖大小。 我建議在視圖的layoutSubviews
或updateConstraints
方法或視圖控制器的viewDidLayoutSubviews
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.