获得android当前的系统语言并且修改

  如果想获取手机的当前系统语言,可以通过Locale类获取,主要方法:Locale.getDefault().getLanguage(),返回的是es或者zh;通过Locale.getDefault().getCountry()获取当前国家或地区,返回为CN或US;如果当前手机设置为中文-中国,则使用此方法返回zh-CN,同理可得到其他语言与地区的信息。


1.首先,如果要程序自动适应系统语言进行转变,可以在res下添加相应的语言文件夹:如:添加中文,则文件夹命名为values-zh-rCN,如果不清楚需要的名字可以到:E:\android-sdk-windows\platforms\android-8\data\res,如这样的文件夹下寻找。这样就可以让程序自动适应系统的语言来选择语言。 
2.如果我们想在程序内部可以手动地选择语言则: 
   a.首先获得当前的语言或者国家: 
String able= getResources().getConfiguration().locale.getCountry(); 
   b.进行判断:如果是中文则返回的able.equals("CN") 
   c.进行设置的代码为: 
    //选择中文 
    Configuration config = getResources().getConfiguration(); 
    DisplayMetrics dm = getResources() .getDisplayMetrics(); 
    config.locale = Locale.SIMPLIFIED_CHINESE; 
    getResources().updateConfiguration(config, dm); 
   d.最后用sharedPreferences保存当前的语言设置

你可能感兴趣的:(获得android当前的系统语言并且修改)