Android(安卓)切换主题demo
16lz
2021-01-25
换肤的框架有很多种了:
initTheme在setContentView之前,表示根据当前的Theme来设置打开Activity时候的一些颜色
在setContentView之后设置不会有任何变化
在点击CheackBox之后,先设置shareprefrence里的主题的标志再refreshUi刷新UIrefreshUi里面,这样做1.获取当前的Theme2.获取当前Theme的一些颜色值3.遍历每一个view修改颜色值4.修改状态栏颜色值
知乎的换肤方式多了一个动画动画的原理是:1.获取当前的decorview,转化成bitmap2.在当前的decorview中添加这个bitmap3.一个属性动画,让存放当前bitmap的view渐变成透明4.动画结束之后移除这个view5.refreshUi
- MultipleTheme
- Colorful
- AndroidChangeSkin
- http://www.jianshu.com/p/2164fa5803b9这里分别对他们进行了分析
initTheme在setContentView之前,表示根据当前的Theme来设置打开Activity时候的一些颜色
在setContentView之后设置不会有任何变化
在点击CheackBox之后,先设置shareprefrence里的主题的标志再refreshUi刷新UIrefreshUi里面,这样做1.获取当前的Theme2.获取当前Theme的一些颜色值3.遍历每一个view修改颜色值4.修改状态栏颜色值
知乎的换肤方式多了一个动画动画的原理是:1.获取当前的decorview,转化成bitmap2.在当前的decorview中添加这个bitmap3.一个属性动画,让存放当前bitmap的view渐变成透明4.动画结束之后移除这个view5.refreshUi
更多相关文章
- Android(安卓)SVG动画PathView源码解析与使用教程(API 14)
- android样式学习(一) 使用selector改变来动态改变背景颜色
- Android动画学习三(Activity跳转动画)
- android Button字体设置颜色
- 三种自定义漂亮的Android(安卓)SeekBar的方法
- Android(java)学习笔记89:泛型概述和基本使用
- android L 的开机动画流程
- Android(安卓)TestView获取每一行文字的方法
- 改变AlertDialog默认背景