You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中CupertinoSliverNavigationBar如何设置动态翻译文本?

解决CupertinoSliverNavigationBar largeTitle动态翻译文本的问题

问题根源在于你给CupertinoSliverNavigationBar加了const关键字。const修饰的组件要求所有子属性必须是编译时常量,但Text("captureSelectionView.viewTitle").tr()是运行时动态获取翻译文本的,属于非常量值,因此触发「Invalid constant value.」报错。

解决方法

直接移除CupertinoSliverNavigationBar前的const关键字即可,修改后的代码如下:

child: CustomScrollView(
          slivers: [
            CupertinoSliverNavigationBar(
              largeTitle: Text(tr("captureSelectionView.viewTitle")),
            ),
            SliverToBoxAdapter( ...

你也可以把tr()直接作为参数传给Text,写法更简洁,效果完全一致。

移除const后,CupertinoSliverNavigationBar可以正常渲染动态翻译的文本,easy_localization的多语言切换功能也能正常工作。

内容的提问来源于stack exchange,提问作者Christian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 08:01:43