簡體   English   中英

UIImage在iPhone 6Plus上縮放

[英]UIImage scaled on iPhone 6Plus

在我的應用程序中,我有一個將UIView轉換為UIImage 除了像素密度更高的iPhone 6 plus之外,它在所有設備上都能正常工作。

我通過將灰色視圖轉換為UIImageUITabBar創建selectionIndicatorImage 我知道這可能不是這種情況下的最佳做法,但是無論如何,我都需要這種方法在應用程序上的其他方面能正常工作。

這是我的UIImage初始化程序:

convenience init?(view: UIView) {
    UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0)
    view.layer.renderInContext(UIGraphicsGetCurrentContext())

    var img = UIGraphicsGetImageFromCurrentImageContext()

    UIGraphicsEndImageContext()

    self.init(CGImage: img.CGImage)
}

這將產生以下結果:

iPhone 6 Plus

iPhone 6 Plus

iPhone 6

iPhone 6

有什么想法嗎?

干杯

//尋找線,希望對您有幫助

“最簡單的方法是設置UIImageView的框架,並將contentMode設置為以下一種”

假設您正在viewDidLoad方法中計算tabBarFrame,則當尚未創建選項卡欄時,frame屬性將為您提供錯誤的結果。 您需要在viewDidAppear方法中移動代碼,或者如果您想更早地進行計算,也可以在viewWillAppear中移動它,但是首先調用tabBar.layoutIfNeeded()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM