本系列教程对应的代码已开源在 Github zeedle
本篇文章介绍Slint UI如何为播放器页面添加多语言支持,让你的应用走向国际!Translations | Slint Docs
@tr
修饰.slint
中的字面量就像这样:
打开git bash,输入:
find ui -name \*.slint | xargs slint-tr-extractor -o zeedle.pot
此命令会找出ui
文件夹下所有的.slint
文件,并把这些文件路径作为参数全部传给slint-tr-extractor,后者会提取所有被@tr
修饰的字面量到.pot
中。
.pot
文件翻译完成后,保存生成的.po
文件到lang/语言代码/LC_MESSAGES/zeedle.po
语言代码:
......其余请自行查阅。
在build.rs
中指定语言目录,跟上面对应,也就是lang
:
fn main() {
let cfg = slint_build::CompilerConfiguration::new()
.with_style("fluent".into())
.with_bundled_translations("lang");
slint_build::compile_with_config("ui/app.slint", cfg).expect("slint build failed");
}
可以在用户callback
中调用此函数完成UI语言更改:
slint::select_bundled_translation(语言代码字面量)
.expect("failed to set language");
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。