讲一下今天在做的事情,你大概已经知道 Rune 有一个跟 Windows 10 Tile 一样会翻来翻去的磁贴,那个磁贴因为用了 Flutter 内置的布局系统,而且布局埋得特别深,所以性能奇烂无比,你设备性能如果不太好的话,来回滚界面是会卡的。我之前做那个很 Fancy 的进场动画,实际上是为了让组件 build 的时间能错开,至少进去界面的时候不要开局卡。
但这毕竟不是解决问题的办法,所以在 dev 8 这个时间节点我把它整个打掉重做了。因为是底层绘图 API,图片加载缓存之类的问题也得自己手动做,消耗的精力非常大。但已经到这个时间节点了问题肯定不能埋起来烂在那里,所以还是硬着头皮把东西做了。
https://github.com/Losses/rune/blob/055c1929bf1c843cdfcb589bff62875f510f9fd1/lib/screens/settings_about/widgets/flip_grid_painter.dart
https://github.com/Losses/rune/blob/1f4d237c20563d4e2f966a296e49341521411c66/lib/screens/settings_about/widgets/fast_flip_grid.dart
As you can see, 全是各种时间管理、加载调度、绘图,没几行的东西差点把我送走……还好最后做完了……最后可能再做一个全局缓存共享和资源回收,这块就算完成了。Dev 8 里面没几条,但大多数都是这样的超大型工程,赶在项目进 Alpha 前把烂摊子收拾收拾,进了 Alpha 之后可能就没机会做这么大的底层变动了……
DEV 7 周期 TODO:
[X] 实现全屏功能
[X] 实现音量记忆功能
[X] Library 首页导航
[X] Settings 首页导航
[X] 为搜索界面实现响应式设计Читать полностью…
[X] 为顶部导航栏实现响应式设计
[X] 为播放列表实现响应式设计
[X] 为 Edit Mix 页面实现响应式设计
[X] 修复编辑播放列表后列表不会实时刷新的问题
[X] 修复详情页面拖动窗口大小导致标题抖动的问题
[X] 修复拖动窗口大小导致专辑封面重新加载的问题
想到了一种很恐怖的强迫阅读方式,把你感兴趣但是懒得读的文章过一遍这东西,然后再过一遍 AI 变成雅思听力填空题,好的,你现在有双倍的麻烦了 レ(゚∀゚;)ヘ ヘ( ゚∀゚;)ノ
Читать полностью…DEV 8 周期 TODO:
[ ] 实现 Windows Mobile 转场动效
[ ] 实现 Windows Mobile Tile 动效
[ ] 修复播放列表播完后无法重新播放的问题Читать полностью…
[ ] 修复 Tiles Matrix 的性能问题
[ ] 修复 Windows 10 下黑色背景的问题