SF Symbols 內(nèi)置圖標(biāo)庫(kù)

需求發(fā)現(xiàn)

我們應(yīng)用要在自定義的 WKWebView 支持 Safari 打開(kāi)可以跳轉(zhuǎn)的 url,所以需要添加一個(gè)navigationItem 的 Safari 圖標(biāo)可以用來(lái)操作,這時(shí)記起來(lái)蘋果自帶很多圖標(biāo),比如 add菇晃,search 等一系列,所以想找到 Safari 的圖標(biāo)崎场,結(jié)果進(jìn)一步探究引出下文埋泵。

簡(jiǎn)介

SF Symbols provides a set of over 1,500 consistent, highly configurable symbols you can use in your app. Apple designed SF Symbols to integrate seamlessly with the San Francisco system font, so the symbols automatically ensure optical vertical alignment with text for all weights and sizes. You can use SF Symbols in apps running in iOS 13 and later, watchOS 6 and later, and tvOS 13 and later.

總結(jié)為: SF Symbols 是蘋果在2019年推出自 iOS 13 開(kāi)始支持的一套1500+的高度可配置的符號(hào),旨在規(guī)范和簡(jiǎn)化圖標(biāo)的制作和集成么介。

多種樣式符號(hào)
symbols.gif

下載地址: https://developer.apple.com/design/downloads/SF-Symbols.dmg

當(dāng)然娜遵,如果符號(hào)不符合你的要求,你也可以導(dǎo)出 svg 格式的模板重新編輯壤短,然后再導(dǎo)入到XCode中设拟,使用 UIImage(name: "safari")調(diào)用,默認(rèn)會(huì)優(yōu)先調(diào)用你自定義的 symbols 符號(hào) (所以也要避免自定義的符號(hào)和 @2x 普通圖標(biāo)重名)久脯。

export.png
使用

大家可以看到纳胧,符號(hào)的使用是 UIImage 的一個(gè) init 方法


systemIamge.png

使用起來(lái)也很方便,只需要:

if #available(iOS 13.0, *) {
       let image = UIImage(systemName: "safari")
       ...
}

上面說(shuō)到這是一款靈活可配置的符號(hào)帘撰,那么靈活在哪里呢跑慕?那么來(lái)看看下面方法:

@available(iOS 13.0, *)
    public /*not inherited*/ init?(systemName name: String, withConfiguration configuration: UIImage.Configuration?)

可以通過(guò)設(shè)置 configuration 設(shè)置一些屬性,更多見(jiàn) UIImage.SymbolConfiguration

let config = UIImage.SymbolConfiguration(pointSize: 30, weight: UIImage.SymbolWeight.medium)
let image = UIImage(systemName: "safari", withConfiguration: config)
...

因?yàn)?Configuration 是 UIImage 的屬性,所以也可以直接對(duì)
ImageView 設(shè)置 preferredSymbolConfiguration屬性:

let image = UIImage(systemName: "safari")
let imageView = UIImageView(image: image)

let config = UIImage.SymbolConfiguration(pointSize: 30, weight: UIImage.SymbolWeight.medium)
imageView.preferredSymbolConfiguration = config
...

更多詳細(xì)使用見(jiàn) https://developer.apple.com/documentation/uikit/uiimage/3294233-init

總結(jié)

這是蘋果一次走向規(guī)范的不錯(cuò)嘗試核行,之后 API 還會(huì)支持以NSTextAttachment 形式嵌入到屬性字符串文本中牢硅。
但是使用的同時(shí)也存在一些問(wèn)題,比如 iOS13 以下得另行適配芝雪,符號(hào)庫(kù)遠(yuǎn)遠(yuǎn)不夠豐富减余,一些符合(比如 safari)不支持導(dǎo)出自定義等等。
總之惩系,期待更多的開(kāi)放和支持 Do it and do better位岔。

謝謝閱讀(?▽?)

參考
  1. SF Symbols 蘋果官網(wǎng)文檔 https://developer.apple.com/design/human-interface-guidelines/sf-symbols/overview/
  2. Introducing SF Symbols - WWDC 2019 https://developer.apple.com/videos/play/wwdc2019/206/
  3. 解讀 WWDC19 - SF Symbols 內(nèi)置圖標(biāo)庫(kù) https://swiftcafe.io/post/sf-symbol
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市堡牡,隨后出現(xiàn)的幾起案子赃承,更是在濱河造成了極大的恐慌,老刑警劉巖悴侵,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瞧剖,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡可免,警方通過(guò)查閱死者的電腦和手機(jī)抓于,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)浇借,“玉大人捉撮,你說(shuō)我怎么就攤上這事「竟福” “怎么了巾遭?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)闯估。 經(jīng)常有香客問(wèn)我灼舍,道長(zhǎng),這世上最難降的妖魔是什么涨薪? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任骑素,我火速辦了婚禮,結(jié)果婚禮上刚夺,老公的妹妹穿的比我還像新娘献丑。我一直安慰自己,他們只是感情好侠姑,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布创橄。 她就那樣靜靜地躺著,像睡著了一般莽红。 火紅的嫁衣襯著肌膚如雪妥畏。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,679評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音咖熟,去河邊找鬼。 笑死柳畔,一個(gè)胖子當(dāng)著我的面吹牛馍管,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播薪韩,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼确沸,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了俘陷?” 一聲冷哼從身側(cè)響起罗捎,我...
    開(kāi)封第一講書(shū)人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎拉盾,沒(méi)想到半個(gè)月后桨菜,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡捉偏,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年倒得,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片夭禽。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡霞掺,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出讹躯,到底是詐尸還是另有隱情菩彬,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布潮梯,位于F島的核電站骗灶,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏秉馏。R本人自食惡果不足惜矿卑,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望沃饶。 院中可真熱鬧母廷,春花似錦、人聲如沸糊肤。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)馆揉。三九已至业舍,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背舷暮。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工态罪, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人下面。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓复颈,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親沥割。 傳聞我的和親對(duì)象是個(gè)殘疾皇子耗啦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 蘋果為我們的App制作可謂是操碎了心,不僅給我提供了開(kāi)箱即用的SwiftUI界面設(shè)計(jì)框架机杜。而且還提供了一套圖標(biāo)庫(kù)帜讲。...
    iCloudEnd閱讀 5,516評(píng)論 5 2
  • 二分搜索大家都會(huì),但是一般我們都是采用閉區(qū)間[a,b]的方式來(lái)進(jìn)行搜索椒拗,并且循環(huán)條件一般是left <= righ...
    RiceCake1122閱讀 161評(píng)論 0 0
  • 備忘錄里存了我在2015年12月寫的一篇聞思分享似将,貌似挺認(rèn)真的,發(fā)給大家看看蚀苛,文字拙劣玩郊,大家多包涵。 本期法義主要...
    狗熊媽閱讀 989評(píng)論 0 0