2011-05-14 16 views
0

我有以下代碼:如何獲得語言奧地利,瑞士,

if (Locale.getDefault().equals(Locale.GERMANY) || 
    Locale.getDefault().equals(Locale.GERMAN)) { 
     tp.setIs24HourView(true); 
    } 

這是工作語言設置「德國」。但還有其他語言可供選擇:奧地利(德國),瑞士(德國)等。對於這些語言,我也希望if聲明變得「真實」。

因此,例如,奧地利是 「de_AT」 Locale.GERMANY給de_DE這個 Locale.GERMAN只給出了去

,如果我做

if (Locale.getDefault().equals("de_AT") 

返回false

我可以」不知道如何獲得其他德語國家的價值。

回答

1

Android已經爲您提供了一種獲取用戶選擇的小時格式的方法。使用此設置很重要,因爲用戶可以覆蓋手機設置中的區域設置選項。在任何情況下,這是你應該使用什麼:

tp.setIs24HourView(android.text.format.DateFormat.is24HourFormat()); 

請參閱該文檔here

+0

Thx,我會用這個! – tobias 2011-05-14 13:52:02

1

您可以查看系統語言是這樣的:

Locale.getDefault().getDisplayLanguage();

它會返回「德語」(String)以瞭解誰設置德語作爲自己的用戶界面語言的所有用戶(手機菜單等),不管他們在德國,奧地利或澳大利亞^^