如何拉伸顯示UITabbar的backgroundImage

設備:iOS12.2 iPhone XR xcode10.2.1objective-c

遇到個問題記錄一下: UITabbar的backgroundImage默認平鋪顯示,我試圖讓它拉伸顯示xcode

一開始我試圖查下文檔Stack Overflow: 若是你想拉伸看下UIImage.Resizing。👌 看起來很容易bash

let img = UIImage(named:"backgroundTabbar")?.resizableImage(withCapInsets: .zero, resizingMode: .stretch)
homeVC?.tabBar.backgroundImage = img
複製代碼

看起來並不ok🤔 試了多種參數都不行 受不了 咱直接看看他到底啥意思app

/* The background image will be tiled to fit, even if it was not created via the UIImage resizableImage methods.
     */
    @available(iOS 5.0, *)
    open var backgroundImage: UIImage?
複製代碼

好的 註釋說了 就是平鋪,你想咋的? resizableImage也不行🙃ui

不讓就不讓 也行 至少知道問題出在哪了 繼續google 找一個11年的帖子 說用stretchableImage(withLeftCapWidth:topCapHeight:)這個能解決 抱着死馬當活馬醫 實踐是檢驗真理惟一標準的心態試了一下 還真成了!google

let img = UIImage(imageLiteralResourceName: "backgroundTabbar").stretchableImage(withLeftCapWidth: 0, topCapHeight: 0)
homeVC?.tabBar.backgroundImage = img
複製代碼

Creates and returns a new image object with the specified cap values.

Deprecated

Deprecated. Use the resizableImage(withCapInsets:) instead, specifying cap insets such that the interior is a 1x1 area.spa

文檔看了一眼 ,這個處理圖片的方法iOS5被棄用了,但我在iOS12用徹底不報警。。咱也不知道 咱也不敢問😂 以上code

相關文章
相關標籤/搜索