qqliu10u / QSkinLoader

一个支持多种场景的Android换肤框架。基本原理是通过代理LayoutInflater的View创建过程解析皮肤相关属性(background/src/textColor等),将皮肤相关属性设置到View的Tag内,在切换皮肤时寻找对应的皮肤来完成实时刷新动作。此方案具有代码及XML侵入性小、功能完善(支持Activity/Dialog/悬浮窗/PopWindow/Fragment等)、无需重启Activity、支持自定义属性换肤、同时支持资源内换肤和独立资源包(下载后换肤)等优点。接口按流式编程设计,个人感觉,比目前几种换肤框架好用一些。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

请问只支持白天黑夜 两种模式嘛

1191102363 opened this issue · comments

不是的,这是个换肤框架,支持切换多种皮肤,我做demo的例子里只写了白天夜间模式切换,是因为我比较懒,^_^。具体来讲:框架默认实现了两种换肤方式,分别为APKResourceLoader/SuffixResourceLoader和一种夜间模式切换方式ConfigChangeResourceLoader。

1)APKResourceLoader换肤的皮肤包是一个apk文件,支持从服务端或者本地路径中加载皮肤包;
2)SuffixResourceLoader支持定义不同名称的资源来换肤,比如文字颜色R.color.text_color默认为黑色,增加R.color.text_color_red并使用SuffixResourceLoader.loadResource("red",listener)可以替换为红色;
3)至于ConfigChangeResourceLoader,由于使用的是Android的夜间模式,所以只能切换两种模式。

PS:框架支持自定义皮肤加载方式,不使用这三种加载方式,不过一般情况下用途不大。

请问如何支持fragment急急急!!!

Fragment换肤请见:#3