google android语言设置,android – 如何在应用程序的默认语言中设置google api对话框的文本...

本文详细介绍了如何在Android应用中实现语言切换功能。通过SharedPreferences保存用户选择的语言,并在启动时读取该首选项来设定应用的语言环境。代码示例展示了如何在英语和印地语之间切换,同时提供了获取语言代码的方法。此解决方案适用于添加更多语言选项,只需按照国家代码添加相应的字符串资源。
摘要由CSDN通过智能技术生成

您不能设置系统默认语言.如果要提供多种语言.然后从语言环境中可以设置语言.如果您更改了默认语言,则将其设为英文,然后将其更改为此.请检查以下代码.

在SharedPreferences中选择语言并保存语言的价值.每当启动应用程序检查语言首选项的值,然后选择它们.

确保每个字符串都应该以此形式添加到值文件夹中.

对于默认的英文,然后将所有字符串放在值内.对于hindi,您需要设置值 – hi.Same事情发生在其他语言的字符串中使用国家代码.对于国家代码从here.

SharedPreferences sharedPreferences = getSharedPreferences(Common.MYPREFERENCE_LANGUAGE, Context.MODE_PRIVATE);

SharedPreferences.Editor editor = sharedPreferences.edit();

if (parent.getSelectedItem().equals("English")) {

Utils.updateLanguage(activity, "en");

editor.putString("language", "en");

} else {

Utils.updateLanguage(activity, "hi");

editor.putString("language", "hi");

}

editor.apply();

public static void updateLanguage(Context context,String lang){

String mlanguage = getlanguage(lang);

PurplkiteLogs.logError("", " language update " + mlanguage);

Locale locale = null;

Configuration config;

try {

if (mlanguage.equals("en")) {

locale = Locale.ENGLISH;

} else if (mlanguage.equals("hi")) {

locale = setLocale(context,"hi");

} else {

locale = new Locale(mlanguage);

}

Locale.setDefault(locale);

config = new Configuration();

config.locale = locale;

context.getResources().updateConfiguration(config,

context.getResources().getDisplayMetrics());

} catch (Exception e) {

} finally {

mlanguage = null;

config = null;

locale = null;

context = null;

}

}

private static String getlanguage(String lang) {

String mlang = null;

if (lang != null) {

if (lang.trim().equalsIgnoreCase("hi")) {

mlang = "hi";

} else {

mlang = "en";

}

}

return mlang;

}

public static Locale setLocale(Context context ,String lang ) {

Locale myLocale = new Locale(lang);

Resources res = context.getResources();

DisplayMetrics dm = res.getDisplayMetrics();

Configuration conf = res.getConfiguration();

conf.locale = myLocale;

res.updateConfiguration(conf, dm);

return conf.locale;

}

谢谢,希望这将帮助您解决您的问题并清除您的概念.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值