Libgdx本地化

时间:2015-12-29 19:50:04

标签: android file localization libgdx

我想在Libgdx中为我的项目创建一个本地化文件;但是,我的代码抛出了一个错误。

我的代码:

package com.mygdx.mytest;

import com.badlogic.gdx.ApplicationAdapter;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.files.FileHandle;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.utils.I18NBundle;

import java.util.Locale;

public class MyTest extends ApplicationAdapter {

    @Override
    public void create () {
        FileHandle baseFileHandle = Gdx.files.internal("i18n/MyBundle");
        Locale locale =new Locale("", "", "");
        I18NBundle MyBundle = I18NBundle.createBundle(baseFileHandle, locale);
    }

    @Override
    public void render () {
        Gdx.gl.glClearColor(1, 0, 0, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
    }
}

我的错误:

I18NBundle MyBundle = I18NBundle.createBundle(baseFileHandle, locale);

我的错误在哪里?请帮忙。

2 个答案:

答案 0 :(得分:1)

您的代码有效,但显然您没有捆绑。 您需要一个包含路径的文件:

{project root}/android/assets/i18n/MyBundle.properties

请记住提供错误日志。

答案 1 :(得分:0)

我在我的项目中使用此代码,它对我来说很好。

FileHandle internal = Gdx.files.internal("i18n/lang");
I18NBundle local = I18NBundle.createBundle(internal, Locale.ROOT);
I18NBundle portuguese = I18NBundle.createBundle(internal, new Locale("pt"));