国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Swift > 正文

Swift如何在應用中添加圖標更換功能的方法

2020-03-09 17:42:25
字體:
來源:轉載
供稿:網友

接之前關于主題的分享,主題滿足了用戶界面自定義的需求。但是,當應用圖標一直為默認的樣子時,這一切顯得并不那么完美。比如OneDay的主題擁有10種配色,而默認的圖標僅僅只有綠白搭配。

iOS在10.3之后,增加了動態更換圖標的功能,允許在應用中提前內置圖標素材,在特定的用戶操作或應用定時函數進行替換應用圖標??赡艿膽脠鼍?,比如電商APP提前內置節日的圖標、時鐘類APP內置時間圖標。

實現應用圖標功能并不困難,通過三個步驟就可搞定:
1.設置圖標信息
2.添加圖標文件
3.調用更換函數

一、在info.plist中設置圖標信息

首先將需要更換的圖標按照下面的方式聲明,以便我們能夠正常調用文件和方法。注意,每個圖標的圖標名稱和對應的文件名要一一對應。

Swift,圖標更換,添加圖標更換

因為OneDay有10中主題,每種主題有2個主要顏色,因此在我做的過程中實際上配置信息配置了20條。

二、在工程根目錄下添加圖標文件

圖標文件需要在根目錄下添加,這樣才能正常調用。注意圖標的文件有2x和3x兩種尺寸,分別為 120x120和180x180。

Swift,圖標更換,添加圖標更換

當然Assets中也要添加,為了方便在應用中做預覽使用。

Swift,圖標更換,添加圖標更換

三、在使用的地方調用更換函數

最后一步其實很簡單,在需要的地方調用changeIcon(iconName:String?)即可,參數為我們添加好的應用圖標名稱。在changeIcon(iconName:String?)中需要判斷是否支持更換圖標,以免出錯,當然也可以根據判斷提前顯示或隱藏該功能。

func changeIcon(iconName:String?) {    if #available(iOS 10.3, *) {      if UIApplication.shared.supportsAlternateIcons {//判斷設備是否支持更換圖標        print("支持更換圖標!")        //開始更換        UIApplication.shared.setAlternateIconName(iconName, completionHandler: { (error) in          if error != nil {            print("替換icon失敗/(String(describing: error?.localizedDescription))")          }        })      }else {        print("設備不支持更換圖標")      }    } else {      // Fallback on earlier versions    }  }

最后來看看OneDay實現后的效果吧:

Swift,圖標更換,添加圖標更換

GitHub:OneSwift - iOS Tips Based On Swift

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到swift教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 稻城县| 景谷| 繁昌县| 仙游县| 嘉禾县| 繁峙县| 临泽县| 绥棱县| 宜良县| 滦南县| 宁都县| 遂宁市| 宝兴县| 峨边| 和平区| 桦川县| 邵东县| 湘潭县| 安阳市| 大连市| 西昌市| 宁海县| 惠安县| 柳林县| 翁源县| 门源| 桃源县| 清河县| 会同县| 兴和县| 盐亭县| 博野县| 连州市| 灵寿县| 平度市| 那曲县| 江永县| 富锦市| 五峰| 静宁县| 封丘县|