[iOS][swift]UIView顏色漸層

更新於 2024/11/13閱讀時間約 2 分鐘


class GradientView: UIView {

private var gradientLayer = CAGradientLayer()
private var vertical: Bool = false

func draw(_ colors: [Any]? , isVertical : Bool, locations: [NSNumber]? = [0.0, 1.0]) {
self.vertical = isVertical

//fill view with gradient layer
gradientLayer.frame = self.bounds

//style and insert layer if not already inserted
if gradientLayer.superlayer == nil {

gradientLayer.startPoint = CGPoint(x: 0, y: 0)
gradientLayer.endPoint = vertical ? CGPoint(x: 0, y: 1) : CGPoint(x: 1, y: 0)
gradientLayer.colors = colors//[UIColor.green.cgColor, UIColor.red.cgColor]
gradientLayer.locations = locations

self.layer.insertSublayer(gradientLayer, at: 0)
}
}

}




avatar-img
8會員
123內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先要在info.plist裡設定新增藍芽服務。然後做宣告,如下: var centralManager: CBCentralM
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先先宣告: var centralManager: CBCentralManager = CBCentralManager.ini
儲存檔案: let savePanel = NSSavePanel() savePanel.canCreateDirectories = true savePanel.showsTagField = false savePanel.nameFieldStringValue = "localFile
用來操作 Core Data 的常數 private let coreDataContext = (NSApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext 取的資料數量: func get
func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { NSApplication.shared.terminate(self) return
字串交換: let str = "被誰喜歡,又喜歡誰呢?" // 交換 print(str.replacingOccurrences(of: ",又", with: "?")) //被誰喜歡?喜歡誰呢? 字串去首尾: let str = "被誰喜歡,又喜歡誰呢?" // 去首尾 print
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先要在info.plist裡設定新增藍芽服務。然後做宣告,如下: var centralManager: CBCentralM
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先先宣告: var centralManager: CBCentralManager = CBCentralManager.ini
儲存檔案: let savePanel = NSSavePanel() savePanel.canCreateDirectories = true savePanel.showsTagField = false savePanel.nameFieldStringValue = "localFile
用來操作 Core Data 的常數 private let coreDataContext = (NSApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext 取的資料數量: func get
func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { NSApplication.shared.terminate(self) return
字串交換: let str = "被誰喜歡,又喜歡誰呢?" // 交換 print(str.replacingOccurrences(of: ",又", with: "?")) //被誰喜歡?喜歡誰呢? 字串去首尾: let str = "被誰喜歡,又喜歡誰呢?" // 去首尾 print
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
JSON-RPC是一種設計簡單、無狀態、輕量級的遠端程序呼叫(RPC)協議。
CryptoSwift提供多種標準的加密演算法,並支援字串與資料之間的轉換。
Thumbnail
APIKit是一種輕量級且類型安全的網路抽象層,將請求與響應類型進行關聯。這篇文章介紹了APIKit的基本概念,包括Request和Session的功能,以及如何定義請求和返回結果的類型,幫助開發者更高效地處理HTTP/HTTPS請求。理解這些基本組件,將使您在建構網路請求時更加得心應手。
Moya是一種類型安全的網路抽象層,他將請求類型與響應類型關聯起來,是基於Alamofire的網路請求庫。
Thumbnail
在我打字的當下還在不停地搖晃,辛苦花蓮的朋友了,今晚肯定不好過。 一個大地震發生後,在接下來的數天、數週甚至數個月內,都有機會發生餘震。因此希望在台灣的朋友,或是你身邊如果剛好有外國朋友,請提醒他們接下來容易有餘震,請多注意。 安卓一堆地震app,ios系統呢? 由於ios的app開發成本
Thumbnail
2023年全球AI成為熱門話題,Google、Samsung等手機品牌相繼推出了他們的「AI手機」。作為手機巨頭之一的蘋果,當然不會放棄這塊大餅。傳言和蘋果執行長庫克本人的言論都指向2024年將是蘋果將推出AI產品,預計iOS 18將帶來重大更新。
Thumbnail
蘋果於1月25日正式推出 iOS 17.3 正式更新,這可視為 iOS 17 的第三次重大改版。這次更新引入了全新的遭竊裝置防護功能。同時,iOS 17.3 還新增了一些令人期待的功能,包括在 Apple Music 中共享播放列表、特別為慶祝黑人歷史和文化而設計的統一背景桌布等。
Thumbnail
這篇文章主要討論了在 iOS 開發中,使用 UIImagePickerController 來選取 GIF 圖片時會變成靜態截圖的問題,並推薦了使用新的 PHPickerViewController 選取 GIF 檔案。同時提供了一些處理 GIF 圖片的方法。
Thumbnail
這篇文章介紹了 iOS 中常用的 Design Patterns,包括 MVC、MVVM、Singleton、Delegation、Observer 等。同時比較了 Delegate 和 Notification 的使用時機。參考資料中還有更多相關資訊。
Thumbnail
extension UILabel{ func GradientLabel(_ colors: [Any]? , isVertical : Bool, locations: [NSNumber]? = [0.0, 1.0]) { for sub:UIView in sel
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
JSON-RPC是一種設計簡單、無狀態、輕量級的遠端程序呼叫(RPC)協議。
CryptoSwift提供多種標準的加密演算法,並支援字串與資料之間的轉換。
Thumbnail
APIKit是一種輕量級且類型安全的網路抽象層,將請求與響應類型進行關聯。這篇文章介紹了APIKit的基本概念,包括Request和Session的功能,以及如何定義請求和返回結果的類型,幫助開發者更高效地處理HTTP/HTTPS請求。理解這些基本組件,將使您在建構網路請求時更加得心應手。
Moya是一種類型安全的網路抽象層,他將請求類型與響應類型關聯起來,是基於Alamofire的網路請求庫。
Thumbnail
在我打字的當下還在不停地搖晃,辛苦花蓮的朋友了,今晚肯定不好過。 一個大地震發生後,在接下來的數天、數週甚至數個月內,都有機會發生餘震。因此希望在台灣的朋友,或是你身邊如果剛好有外國朋友,請提醒他們接下來容易有餘震,請多注意。 安卓一堆地震app,ios系統呢? 由於ios的app開發成本
Thumbnail
2023年全球AI成為熱門話題,Google、Samsung等手機品牌相繼推出了他們的「AI手機」。作為手機巨頭之一的蘋果,當然不會放棄這塊大餅。傳言和蘋果執行長庫克本人的言論都指向2024年將是蘋果將推出AI產品,預計iOS 18將帶來重大更新。
Thumbnail
蘋果於1月25日正式推出 iOS 17.3 正式更新,這可視為 iOS 17 的第三次重大改版。這次更新引入了全新的遭竊裝置防護功能。同時,iOS 17.3 還新增了一些令人期待的功能,包括在 Apple Music 中共享播放列表、特別為慶祝黑人歷史和文化而設計的統一背景桌布等。
Thumbnail
這篇文章主要討論了在 iOS 開發中,使用 UIImagePickerController 來選取 GIF 圖片時會變成靜態截圖的問題,並推薦了使用新的 PHPickerViewController 選取 GIF 檔案。同時提供了一些處理 GIF 圖片的方法。
Thumbnail
這篇文章介紹了 iOS 中常用的 Design Patterns,包括 MVC、MVVM、Singleton、Delegation、Observer 等。同時比較了 Delegate 和 Notification 的使用時機。參考資料中還有更多相關資訊。
Thumbnail
extension UILabel{ func GradientLabel(_ colors: [Any]? , isVertical : Bool, locations: [NSNumber]? = [0.0, 1.0]) { for sub:UIView in sel