LIbGDX语言改变后如何翻译所有文本?

时间:2015-11-28 15:45:37

标签: java android libgdx

我正在与LibGdx开发游戏。我的应用程序中有多种语言在属性文件中。当我在菜单中更改我的语言文本没有翻译时,所以我需要重启我的应用程序才能应用翻译。我认为这是因为我在启动时加载了我的propereties文件而不是它没有改变。我可以在buttonListener中使用setText()方法来更改所有按钮文本,但是我有太多按钮。那么有没有办法立即转换我的应用程序?

1 个答案:

答案 0 :(得分:0)

我相信setText()是获取按钮来更新文本的唯一方法。我不知道你是如何以不同的语言为你的程序存储文本的,但作为一般的想法,你可以尝试创建一个扩展TextButton的自定义类,并在里面引用你存储不同语言文本的位置。然后有一个像changeLanguage()这样的方法,然后获取正确语言的文本并调用setText()本身。

然后你可以有一个数组,它保存程序中所有按钮的引用,当你改变语言时,使用一个循环来通过这个按钮数组,在每个按钮上调用changeLanguage()来将所有按钮设置为正确的语言。这将很快完成,您不必在程序中的每个按钮上手动调用setText()。