你如何使用黑莓资源捆绑?

时间:2011-04-15 17:44:15

标签: blackberry java-me

我对如何在黑莓应用程序中使用资源包感到茫然。我已经创建了一个扩展ResourceBundle并覆盖handleGetObject的类,但是当我说出像

这样的内容时
ResourceBundle bundle = new EnglishBundle();
MenuItem example = new MenuItem(bundle, bundle.EXAMPLE, o, p);
addMenuItem(example);

我得到空指针异常。我做错了什么?

2 个答案:

答案 0 :(得分:1)

假设您创建的资源包文件名为Local.rrc和Local.rrh。

您的课程需要实现LocalResource。是的,这只是我在上面选择的名称+资源。

E.g。

public class FooScreen extends MainScreen implements LocalResource {

private static ResourceBundle _res = ResourceBundle.getBundle(BUNDLE_ID, BUNDLE_NAME);

...

System.out.println(_res.getString(SOMESTRING)); // where SOMESTRING exists in your resource file

这里的文件名非常重要,假设上面的文件默认是英文字符串,西班牙文件需要调用Local_es.rrc。创建此文件会在字符串编辑屏幕上显示es选项卡,并将根据手机当前语言设置自动使用正确的字符串集。

答案 1 :(得分:0)

您可以为MenuItem使用不同的构造函数:

ResourceBundle bundle = new
    ResourceBundle.getBundle(EnglishBundle.BUNDLE_NAME);
MenuItem example = new MenuItem(bundle, EnglishBundle.EXAMPLE, o, p);
addMenuItem(example);