因为时间紧,任务急,工程量可能会大,使用的换肤框架是
https://github.com/burgessjp/ThemeSkinning 这个,代码嵌入量少,集成进去也简单,作为新手,可以把demo运行起来,多点几下,就差不多了。
场景
因为在我的项目中是需要把状态栏,主页底部Tab页的资源文件,还有其他页面的资源文件都需要替换掉,所以,相对于白天黑夜模式的换肤,工程量可能会多一些。
集成步骤
-
添加依赖 compile ‘com.solid.skin:skinlibrary:latestVersion’
-
让你的 Application 继承于 SkinBaseApplication
-
让你的 Activity 继承于 SkinBaseActivity,如果使用了 Fragment 则继承于 SkinBaseFragment
-
在需要换肤的根布局上添加 xmlns:skin=“http://schemas.android.com/android/skin” ,然后在需要换肤的View上加上 skin:enable=“true”
-
新建一个项目模块(只包含有资源文件,例如本项目的 skinpackage 模块),其中包含的资源文件的 name 一定要和原项目中有换肤需求的 View 所使用的资源name一致。
-
拿到上一步生成的文件( ×××.apk ),改名为 ×××.skin,放入 assets 中的 skin 目录下( skin 目录是自己新建的)
-
在合适的地方调用换肤
SkinManager.getInstance()