往期
上期回顾
上期我们做了优化,主要针对ScrollView+GridView的使用场景,用了更加合适的组件,这期想做一个主题变更,为什么呢?
- 第一 暗黑主题越来越刚需化,现在哪个主流App没有暗黑都不好意思上架,而ios阵营更加强硬的要求平台实现,否则下架,库克牛逼,我们惹不起。
- 第二 项目还处于初期,这个时候重构改动成本较低
- 第三 主题的变更网上有很多框架可以快速实现,但我想寻求的是最简单的实现,不想引入别人的框架,一来自己了如指掌,二来不用依赖别人的升级来满足未来奇葩的需求。
这期实现其实很简单,来往下看。
实现效果
大屏浅色
大屏暗黑
小屏浅色
小屏暗黑
代码实现
定义主题类AppTheme,用来配置不同的ThemeData
class AppTheme {
ThemeData themeData;
AppTheme(t