換膚功能

一. 換膚系統文件目錄層次劃分

  1. 創建根目錄ThemeResource文件夾, 用于保存所有的膚色分類
  2. /ThemeResource/light(dark), 在根目錄內部, 創建不同的分類
  3. /ThemeResource/light/styleConfig.plist, 使用plist文件, 配置所有UI控件的顏色
  4. 在類別文件夾中, 如果需要在不同膚色類型中使用不同的圖片, 則需要在不同的分類中提供相同文件名的圖片, 用于換膚切換

二. 細節

  1. 根據控件類型的不同, 創建不同的字典, 內部的key為控件顏色的名稱, value保存顏色的值(16進制顏色值, 可以用YYKit來進行轉換)
    • 如下圖所示
8E148D60-10AA-478F-AA49-64E9BE260596.png
  1. ThemeResource文件夾要直接加入到項目中, 然后使用ThemeManager類來提取各個控件顏色的值
  2. 筆者使用了SDImageCache來緩存重復加載的圖片用于提高加載速度, 當切換皮膚之后, 要注意釋放之前緩存的圖片

三. GitHub地址

https://github.com/XZLeon/ThemeManager

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容