日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android主题换肤实现

發布時間:2024/7/23 Android 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android主题换肤实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本系列文章主要是對一個Material Design的APP的深度解析,主要包括以下內容

  • 基于Material Design Support Library作為項目整體框架。對應博文:Android Material Design 兼容庫的使用詳解

  • RecyclerView的萬能適配器。對應博文:打造一個RecyclerView的萬能適配器-減少你的代碼冗余

  • 高仿QQ的自定義View。對應博文:Android自定義View之高仿QQ健康

  • 主題換膚功能。對應博文:Android主題換膚 無縫切換

效果圖

Android主題換膚

源碼解析參見

Android主題換膚 無縫切換 - 簡書

使用

在使用的時候一定要記得要Activity要去繼承于SkinBaseActivity,Fragment要繼承于SkinBaseFragment,Application要繼承于SkinBaseApplication。當然把這個框架做為你的項目依賴項肯定是必不可少的。為了Demo的簡單,這里我只使用了下面三個顏色作為可以換膚的資源,當然如果你想要使用drawable文件也是可以辦到的,前提是你一定要把這個Demo看懂。

來看一個布局文件

其中
xmlns:skin=”http://schemas.android.com/android/skin”
是我們自定義的,在SkinConfig有。
我們只需在有皮膚更改需求的View中加入skin:enable=”true” 就OK了。

再來看看MainActicvity的部分代碼

這里就是動態的添加有皮膚更改需求的View。

上面就介紹完了在布局文件中使用方法和在代碼中使用方法。

我們應該怎么去換膚呢?很簡單,只需調用SkinManager的load方法就可以了,把皮膚路徑傳進去就可以了,我的這個Demo為了簡單起見,沒有做在線換膚的功能,只是在本地提供了可以更換的皮膚,看到這里我相信你對怎樣在線換膚已經有想法了

最最后我們來看看怎么去開發皮膚包。其實這個是最簡單的,皮膚包實際上就是一個基本的Android項目,里面不包含類文件,只有資源文件。這里只需注意 這里的資源文件名字一定要和原項目中的相同,并且只用包含那些在皮膚更改時需要改變的那些就行了!例如我的這個Demo就只是簡單對上面的三種顏色做了簡單的切換。開發了棕色和黑色兩款皮膚,所以資源文件中只有三個color的值,開發完成之后我們需要將其打包成apk文件,為防止用戶點擊安裝,我們將其后綴改成了skin,這樣做也具有標識性。如果還是不太清楚可以直接去源碼中查看。

源代碼

代碼下載

參考鏈接

Android主題換膚 無縫切換 - 簡書

總結

以上是生活随笔為你收集整理的Android主题换肤实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。