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

Flutter wechat_assets_picker 如何将图片选择/相机页面语言切换为英文?

wechat_assets_picker 界面切换为英文方案

全局生效配置(跟随系统或全局固定英文)

  • 首先在应用根节点的MaterialApp/CupertinoApp中配置多语言参数,示例如下:
import 'package:wechat_assets_picker/wechat_assets_picker.dart';
import 'package:flutter_localizations/flutter_localizations.dart';

MaterialApp(
  // 配置本地化委托列表,必须加入AssetPicker的多语言委托
  localizationsDelegates: const [
    AssetPickerDelegate.delegate,
    GlobalMaterialLocalizations.delegate,
    GlobalWidgetsLocalizations.delegate,
    GlobalCupertinoLocalizations.delegate,
  ],
  // 配置支持的语言列表,英文放在首位时会优先读取英文配置
  supportedLocales: const [
    Locale('en', 'US'),
    Locale('zh', 'CN'),
  ],
  // 若需要强制固定英文,不受系统语言影响,添加以下配置即可
  locale: const Locale('en', 'US'),
  // 其余原有项目配置保持不变
)

单次调用生效配置(仅某次打开选择器时用英文)

  • 如果不需要全局修改,仅单次调用资源选择器时使用英文界面,可以在调用方法时直接指定文本委托:
final List<AssetEntity>? selectedAssets = await AssetPicker.pickAssets(
  context,
  // 直接指定英文文本委托,优先级高于全局配置
  textDelegate: const EnglishAssetPickerTextDelegate(),
  // 其余选择器配置(如最大选择数量、资源类型等)保持不变
);

常见不生效排查

  • 检查项目是否已引入flutter_localizations依赖,该依赖为Flutter官方多语言能力的基础
  • 确认wechat_assets_picker已升级到最新稳定版,避免旧版本多语言兼容问题
  • 若设置了强制locale参数,确认参数值为Locale('en')相关配置

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 04:45:02