android判斷當前系統的語言

圖郅創新發表於2015-12-16

判斷國家:

中文:getResources().getConfiguration().locale.getCountry().equals("CN")

繁體中文: getResources().getConfiguration().locale.getCountry().equals("TW") 

英文(英式):getResources().getConfiguration().locale.getCountry().equals("UK")

英文(美式):getResources().getConfiguration().locale.getCountry().equals("US")

 

如果不清楚當前國家的簡寫,可以直接System.out(getResources().getConfiguration().locale.getCountry());列印出來即可

 

下面是判斷是否是中文或者繁體中文(臺灣):

[java] view plaincopy
  1. public boolean isLunarSetting() {  
  2.         String language = getLanguageEnv();  
  3.   
  4.         if (language != null  
  5.                 && (language.trim().equals("zh-CN") || language.trim().equals("zh-TW")))  
  6.             return true;  
  7.         else  
  8.             return false;  
  9.     }  

[java] view plaincopy
  1. private String getLanguageEnv() {  
  2.        Locale l = Locale.getDefault();  
  3.        String language = l.getLanguage();  
  4.        String country = l.getCountry().toLowerCase();  
  5.        if ("zh".equals(language)) {  
  6.            if ("cn".equals(country)) {  
  7.                language = "zh-CN";  
  8.            } else if ("tw".equals(country)) {  
  9.                language = "zh-TW";  
  10.            }  
  11.        } else if ("pt".equals(language)) {  
  12.            if ("br".equals(country)) {  
  13.                language = "pt-BR";  
  14.            } else if ("pt".equals(country)) {  
  15.                language = "pt-PT";  
  16.            }  
  17.        }  
  18.        return language;  
  19.    }  
String format = Settings.System.getString(context4Year.getContentResolver(), Settings.System.DATE_FORMAT);

相關文章