本地化富文本
一个 Flutter 插件,用于方便 RichText 的本地化。
入门
在您的 pubspec.yaml 中安装库。
dependencies:
localized_rich_text: ^0.0.1
用法
final textToLocalize = "Hi #name, how are you?";
final userName = "Jhon";
...
LocalizedRichText(
text: textToLocalize,
defaultTextStyle: Theme.of(context).textTheme.bodyText1!,
keys: [
LocalizedRichTextKey(
key: '#name',
value: userName,
textStyle: Theme.of(context).textTheme.subtitle1!,
),
],
)
参数说明
text
这必须是需要本地化的 字符串。
文本中的 动态 值必须是 唯一的,您可以用特殊字符标记它们,或者使用唯一的值。
该字符串可以是
final textToLocalize = "Hi #name, how are you?";
或者
AppLocalizations.of(context)!.title,
有关 国际化 的更多信息,您可以查阅 Flutter 文档。
defaultTextStyle
这是用于静态单词的 TextStyle。
键
这是必须包含 动态 值的 列表。
每个 动态 值都必须作为 LocalizedRichTextKey 对象传递。
此列表不能为空。
键 将按照它们在要本地化的 字符串 中的插入顺序排序。
这意味着您在 键数组 中传递 键 的顺序并不重要。
LocalizedRichText(
...,
keys: [
LocalizedRichTextKey(
key: '#name',
value: userName,
textStyle: Theme.of(context).textTheme.subtitle1!,
),
],
)