2017-05-21 116 views
0

我有一個UIImageView的大小爲320 * 110.1x和2個圖像似乎工作良好,但是當涉及到3倍的圖像看起來壓扁。如何在UIImageView中顯示圖像像原始圖像沒有拉伸?此外,用戶界面在不同設備中看起來不同我在這裏使用ScaleToFill內容模式。我已經嘗試了aspectFit,但它在UIImageView的左側和右側帶有空白,並且圖像不適合AspectFill.Is可以在所有設備中顯示像原始圖像一樣的圖像,而不需要拉伸?請看看我試過的截圖。如何在UIImageView中像原始圖像一樣顯示圖像?

原始3X圖片: enter image description here

iPhone 6加:

enter image description here

iPhone 7加: enter image description here

+0

期望的結果是什麼? –

+0

是的。在你的故事板中,爲你的圖像找到完美的尺寸,然後將兩個約束:「等寬」和「等高」應用於超視圖,然後將乘數改爲「0.yourValue」爲兩者,圖像視圖和圖像將兩者都完美匹配 –

+0

您可以計算所需寬度的高度並將其設置爲您的圖像視圖。這樣你的長寬比將保持不變。 – Luzo

回答

3

從你的圖像,看起來您已將UIImageView的高度設置爲110分。相反,你需要隨着寬度的增加而增加高度。

將您的UIImageView的頂部,前緣和後緣固定到其超級視圖。最後,通過創建一個寬高比約束設置image.width等於image.height乘數的320:110設置你UIImageView的高度。你可以通過控制來做到這一點 - 在你的UIImageView中點擊並向上拖動到右側,然後在仍然處於圖像視圖內時釋放。然後從彈出窗口中選擇長寬比。在屬性檢查器中將約束的乘數更改爲320:110

Aspect Ratio constraint in Attributes Inspector

正如你在你的問題表示,將您UIImageView規模的內容模式要填寫

+0

哇謝謝。有效。 – Manishankar

0

你可以改變的UIImageView的contentMode到aspectfit