2012-01-17 270 views
1

我需要在我的應用程序中切換阿拉伯語和英語之間的定位。更改BlackBerry語言環境

我有下面的代碼來切換語言環境:

if (Locale.getDefault() == Locale.get(Locale.LOCALE_ar, null)) { 
    Locale.setDefault(Locale.get(Locale.LOCALE_en, null)); 
} else { 
    Locale.setDefault(Locale.get(Locale.LOCALE_ar, null)); 
} 

而且在我的應用我有以下的資源文件:

  • appName.rrh
  • appName.rrc
  • appName_ar .rrc
  • appName_en.rrc

而且我有一個使用一個本地化的字符串如下按鈕:

subscribeButton = new ButtonField(res.getString(LANG), ButtonField.CONSUME_CLICK); 

時的語言環境更改爲阿拉伯語我的問題是,用戶界面翻轉(阿拉伯語是從右到左),並重新開機以英文翻轉它,但沒有在按鈕中的文字改變。請指導我做錯了什麼。

回答

3

因爲您已經創建了與該語言環境相關的文本的按鈕字段。一旦語言環境發生變化,您將不得不重新設置buttonField文本爲

subscribeButton.setLabel(res.getString(LANG)); 
+0

那麼,當語言環境更改時,如何重新加載整個UI? – 2012-01-17 15:40:35

+0

更改語言環境時,請在屏幕中調用refresh()方法,通過設置按鈕字段等來刷新UI。 – rfsk2010 2012-01-17 15:46:14