Miru 界面跟随系统 UI 语言和主题
Mirv 为什么要跟随系统 UI
Flutter 的一个标志性特性是跨平台统一渲染——默认情况下 Flutter 应用会用 Material Design 风格的 UI,不管跑在 Android 还是 Windows 上都长一样。但这恰恰是 Mirv 刻意避免的。
Miru 官方宣传里明确提到:
使用对应系统 UI 设计语言,让你的体验更加统一,不割裂。
这意味着 Mirv 在 Android 上尽量贴合 Material Design,在 Windows 上尽量贴合 Fluent Design,而不是用同一套视觉硬套所有平台。
跟随什么
界面语言
默认跟随系统语言(Android 系统语言是中文,Mirv 就中文),可以在设置里手动切换(参考 语言切换)。
主题色(深色 / 浅色)
部分版本会跟随系统的深色 / 浅色模式切换——系统开了深色,Mirv 也跟着深;系统切浅色,Mirv 也跟着浅。具体支持情况以当前版本为准。
字体
部分版本会尝试使用平台的默认字体,但由于 Flutter 的跨平台限制,实际效果可能不完全一致。
导航栏与状态栏
在移动端,Mirv 会适配系统的导航栏颜色和状态栏透明效果,尽量减少 App 和系统 UI 之间的割裂感。
和纯 Material 风格的差异
这种"跟随系统"不是指完全用平台原生控件(Flutter 做不到),而是 Mirv 在 Flutter 里做了平台适配层:
- Android 端用 Material 组件库的 Android 风格;
- Windows 端用自定义的 Fluent 风格组件;
- 交互模式也有差异(Android 底部导航 vs Windows 左侧导航)。
实际使用下来,Android 和 Windows 的 Mirv 看起来确实是"同一个应用在两个平台上",而不是一份 UI 硬套两端。
Web 端呢
Web 端的系统跟随能力最弱。浏览器本身没有明确的 Material 或 Fluent 风格概念,Mirv Web 版在系统 UI 这件事上基本和平台无关,表现最像一个"跨平台通用"的应用。