麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Swift > 正文

Swift開發(fā)應(yīng)用中如何更方便地使用顏色詳解

2020-03-09 17:42:10
字體:
供稿:網(wǎng)友

前言

春節(jié)期間做了一款新的產(chǎn)品OneScreen,總結(jié)了學(xué)習(xí)Swift開發(fā)以來的一些技巧,今天為大家?guī)硪粋€方便調(diào)取顏色、更好使用顏色、隨時修改顏色的技巧。

主要涵蓋的內(nèi)容是:

     1.通過擴(kuò)展,使用十六進(jìn)制顏色碼標(biāo)記顏色

     2.構(gòu)建自定義的顏色/樣式,在各頁面中方便調(diào)用

     3.在后續(xù)UI調(diào)整中,只需要調(diào)整一個文件即可預(yù)覽全局

實(shí)際上,2、3的技巧類似于之前分享過的多主題解決方案。

一、使用十六進(jìn)制顏色碼

在開發(fā)OneScreen中,首先創(chuàng)建了ExtensionFile.swift/217056.html">swift文件,如下的代碼可以實(shí)現(xiàn)我們后續(xù)調(diào)用十六進(jìn)制顏色碼。

import Foundationextension UIColor {  class func colorWithHexString(hex:String) ->UIColor {    var cString = hex.trimmingCharacters(in:CharacterSet.whitespacesAndNewlines).uppercased()    if (cString.hasPrefix("#")) {      let index = cString.index(cString.startIndex, offsetBy:1)      cString = cString.substring(from: index)    }    if (cString.characters.count != 6) {      return UIColor.red    }    let rIndex = cString.index(cString.startIndex, offsetBy: 2)    let rString = cString.substring(to: rIndex)    let otherString = cString.substring(from: rIndex)    let gIndex = otherString.index(otherString.startIndex, offsetBy: 2)    let gString = otherString.substring(to: gIndex)    let bIndex = cString.index(cString.endIndex, offsetBy: -2)    let bString = cString.substring(from: bIndex)    var r:CUnsignedInt = 0, g:CUnsignedInt = 0, b:CUnsignedInt = 0;    Scanner(string: rString).scanHexInt32(&r)    Scanner(string: gString).scanHexInt32(&g)    Scanner(string: bString).scanHexInt32(&b)    return UIColor(red: CGFloat(r) / 255.0, green: CGFloat(g) / 255.0, blue: CGFloat(b) / 255.0, alpha: CGFloat(1))  }}

這樣,我們每一次通過UIColor.colorWithHexString(hex: "#______")便可以調(diào)用顏色,更快地進(jìn)行顏色獲取。

二、建立自己的顏色

接著,我建立了所有頁面中用到的顏色庫Theme.swift,直接在文件中創(chuàng)建了所有將用到的顏色,給每個顏色的適當(dāng)命名也是方便記憶和使用。

import Foundationimport UIKitstruct Theme{  static var ThemeBlue:UIColor = UIColor.colorWithHexString(hex: "#46b8ee")  static var ThemeDarkBlue:UIColor = UIColor.colorWithHexString(hex: "#3eb5ed")  static var ThemeDeepBlue:UIColor = UIColor.colorWithHexString(hex: "#2396cd")  static var ThemePurple:UIColor = UIColor.colorWithHexString(hex: "#8267c6")  static var ThemeDarkPurple:UIColor = UIColor.colorWithHexString(hex: "#7963c5")  static var ThemeDeepPurple:UIColor = UIColor.colorWithHexString(hex: "#7059c5")  //...}

三、在各頁面中調(diào)用

調(diào)用的過程很簡單,只需要在我們需要UIColor的地方Theme后面直接跟顏色的名稱即可,例如:

cell.backgroundColor = Theme.ThemeDeepPurplecell.backgroundColor = Theme.ThemeDeepBlue

通過兩個簡單的文件,便可以更快速的獲取顏色、自定義顏色。當(dāng)后續(xù)UI調(diào)整,需要新增、改變顏色時,我們只需要更改Theme.swift中的代碼即可。特別是已經(jīng)存在的顏色,在其他頁面文件中無需做任何更改,便可全部更新為最新顏色。
希望這樣的解決方案,能給你的開發(fā)提升效率。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網(wǎng)的支持。


注:相關(guān)教程知識閱讀請移步到swift教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 好吊一区二区三区 | 少妇一级淫片免费放正片 | 99亚洲| 海角在线观看91一区二区 | 午夜视频观看 | 蜜桃免费在线 | 中日韩免费视频 | 污版视频在线观看 | 国产精品视频一区二区噜噜 | 免费香蕉成视频成人网 | 韩国草草影院 | 国产羞羞视频在线观看免费应用 | 日本人乱人乱亲乱色视频观看 | 欧美成人福利 | 亚洲一区二区三区四区精品 | 久久99国产精品视频 | 日韩视频一区在线 | 美女色影院| 99激情视频 | 欧美一级色片 | 斗破苍穹在线免费 | 少妇激情视频 | 黄色日韩网站 | 成人羞羞在线观看网站 | 久久久久久久久成人 | 性猛交ⅹxxx乱巴西 在线播放中文 | 久久精品视频免费观看 | 久久国产精品一区 | 午夜精品小视频 | 成人网在线观看 | 日韩av手机在线免费观看 | 欧美成人午夜 | 欧美成人精品一区二区 | 午夜亚洲视频 | 一区二区三区精品国产 | 老a影视网站在线观看免费 国产精品久久久久久久久久尿 | 久久国产亚洲精品 | 精品国产一二区 | 国产午夜精品久久久久 | 精品在线观看一区 | 色视频一区二区 |