我沒有核芯顯卡的經驗,但我需要繪製看起來像這些動態的uImage:迅速比3戰平UIImage的編程
(其實我想的灰色區域明確所以紅色會看起來像漂浮)
這是我試過的代碼:
公共推廣的UIImage {
public convenience init?(color: UIColor, size: CGSize = CGSize(width: 27, height: 5), isWhole: Bool = true) {
let totalHeight: CGFloat = 5.0
let topRectHeight: CGFloat = 1.0
//if (isWhole) {
let topRect = CGRect(origin: .zero, size: CGSize(width: size.width, height: topRectHeight))
UIGraphicsBeginImageContextWithOptions(topRect.size, false, 0.0)
color.setFill()
UIRectFill(topRect)
let bottomRect = CGRect(origin: CGPoint(x: 0, y: topRectHeight), size: CGSize(width: size.width, height: totalHeight - topRectHeight))
UIGraphicsBeginImageContextWithOptions(bottomRect.size, false, 0.0)
UIColor.blue.setFill()
UIRectFill(bottomRect)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
guard let cgImage = image?.cgImage else { return nil }
self.init(cgImage: cgImage)
}
你需要圖像或者它可能是'UIView's? –
需要uiimage。因爲庫調用庫函數需要uiimage作爲輸入。 – iadgotstacked
我正在添加一個新答案。我知道你已經接受了,但這可能是一個很好的選擇。它將任何'UIView'變成'UIImage'。 – dfd