[英]Masking a UIImageView doesn't work
我有一個UIImageview
設置:
let picture = UIImageView(frame: imageFrame)
picture.image = UIImage(named: image)
在這里你可以看到它:
現在我想要將它屏蔽為一個恆定的大小,因為我將是隨機大小的隨機圖片,所以我創建了一個UIView:
let frame = CGRect(x: 0, y: CGRectGetMaxY(menuLine.frame) + HeightForSize * 0.05, width: view.bounds.width, height: HeightForSize * 0.9)
let mask = UIView(frame: frame)
mask.backgroundColor = UIColor.whiteColor()
當我將子視圖添加到我的視圖時,它看起來像這樣:
但是當我試圖掩蓋它時:
picture.maskView = mask
看起來像這樣,這里出了什么問題?
UIImageView尊重contentMode,這可能比掩碼更容易實現您的目的。 將imageView設置為您希望所有圖像都適合的固定大小。如果您希望圖像擠入並顯示黑條(如果它太高),請使用UIViewContentMode.scaleAspectFit
。 但最有可能看起來最好的是UIViewContentMode.scaleAspectFill
。 它將保持圖像和比例的寬高比,直到它填充您創建的imageView框。 使用兩種模式和其他模式來觀看它們的效果。
let imageView = UIImageView(image: UIImage(named: "myImage"))
imageView.frame = CGRect(x: 0, y: 0, width: 100, height: 100)
imageView.contentMode = .scaleAspectFill
有關各種內容的更多信息,您可以在此處嘗試。
https://developer.apple.com/reference/uikit/uiviewcontentmode
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.