专注于Blackberry

BlackBerry 应用程序开发者指南 第一卷:基础–第8章 本地化应用程序

8 第8章 本地化应用程序 资源文件 为应用程序加入本地化支持 从资源文件获取字符串 为应用程序套件管理资源文件 资源文件 将应用程序设计为在代码不改变的情况下它们可以本地化(适合指定的语言以及区域)。为了代替在你的源代码中包含原文元素,将文本字符串存储到一个独立的资源文件中。在你的源代码例中,使用唯一的标志符映射到合适的资源。   在独立的资源文件中存储文本字符串有2个好处: 文本翻译有更高的效率,因为一个给定位置(locale)的所有文本字符串都存储在一个单独的文件中,这个文件在你的源代码之外。 基于用户的位置,应用程序可以动态的获得合适的文本显示给用户。 BlackBerry JDE包含了一个内置的资源机制来创建字符串资源。本地化(Localization)API包含在net.rim.device.api.i18n包里。 注:MIDP应用程序不支持本地化。 一个给定的位置的资源存贮在一个ResourceBundle对象中。一个ResourceBundleFamily对象包括了一个ResourceBundle的集合,它将应用程序的资源进行分组。在不需要新的资源包下,应用程序可以切换语言,这依赖于用户的位置。 BlackBerry JDE将每个资源包编译为一个独立已编译的.cod文件。你可以为应用程序将其他.cod文件和适合的.cod文件一起加载到BlackBerry设备上。 本地化需要的文件 描述 例子 资源头文件 这个文件为每个本地字符串定义具有描述性的键。 当BlackBerry编译一个项目时,它创建一个以Resource加到.rrh文件名末作为文件名的资源接口。例如,如果你创建AppName.rhh,接口就是AppNameResouce。 AppName.rrh 资源内容文件(根位置) 文件为根(全局)位置将资源键映射到字符串值。它和资源头文件有相同的名字。 AppName.rrc 资源内容文件(指定的位置) 文件为指定的位置(语言和国家)将资源键映射到字符串值。文件和资源头文件有相同的名字,跟在后面的是下划线(_)和语言代码,然后是可选的,一个下划线和国家代码。 2个字母的语言代码和国家代码分别在ISO-639以及ISO-3166有描述。 AppName_en.rrc AppName_en_GB_rrc AppName_fr.rrc 初始化文件 文件初始化资源包机制。仅当资源作为一个独立的工程编译时本文件为才需要 Init.java 资源继承 在一个基于继承的层次里组织资源。若一个字符串在一个位置里没有定义,下一个最靠近的字符串会被使用。 为应用程序加入本地化支持 增加资源头文件 在BlackBerry IDE,打开File菜单,点击New。 在Source file name里,键入一个文件名。 点击Browse。 选择一个包含文件的文件夹。 点击OK。 在域里,键入包的名字,例如:com.rim.samples.docs.countryinfo. 点击OK。 点击Yes。 除了包文件的描述,保留出现在文本编辑器的文件。 在右边的区域里,右击加入文件到项目中,然后点击Insert [...]

继续阅读本文 →

Taigoo发表于 April 23, 2008 6:38 am | 留言 |文档