如何使用LWUIT更改j2me程序中的本地化?

时间:2012-11-08 14:36:38

标签: java mobile java-me lwuit

我使用LWUIT资源编辑器在项目的res文件中创建了一个本地化表。但事实证明,我不知道如何切换不同的本地化。如何为我的程序设置全局语言?

2 个答案:

答案 0 :(得分:2)

此代码可以将两个不同的本地化合并为一个。(默认保存在bundle中并与新的本地化合并L10N合并(这些对象是hashTable))

if (themeName != null && !themeName.equals(this.currThemeName)) {
            try {
                if (themeName.equals(DEFAULT_THEME_NAME)) {
                    defaultTheme = Resources.open(DEFAULT_THEME_NAME);
                    bundle = null;
                } else {
                    defaultTheme = Resources.open(DEFAULT_THEME_NAME);
                    bundle = Resources.open(themeName);
                }
               mergeL10N = defaultTheme.getL10N("Localization (L10N) 1", "iw");
                if (bundle != null) {
                  mergeHashtable(mergeL10N, bundle.getL10N("Localization (L10N) 1", "iw"));
                 }
                  UIManager.getInstance().setResourceBundle(mergeL10N);

                                      }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

答案 1 :(得分:1)

您必须打开您的资源并使用您想要使用的表格,在这里您可以找到一个示例

try {
        Constants.res = Resources.open("/Lang.res");
    } catch (Exception e){
        System.err.println("can't load resource file:" + e);
    }
Hashtable h = Constants.res.getL10N("English.res","en");