Android 上实现微信微博上的应用语言切换

发布时间:2019-06-28 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Android 上实现微信微博上的应用语言切换脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

核心代码

Resources resources = context.getResources();
configuration configuration = resources.getConfiguration();
DisplayMetrics displayMetrics = resources.getDisplayMetrics();
configuration.locale = getLocale(language);
resources.updateConfiguration(configuration, displayMetrics);

然后写一个ListPReference

@override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
    Intent intent = new Intent(activITy, MainActivity.class);
    intent.putExtra("setLanguage", true);
    activity.startActivity(intent);
    activity.finish();
}

知道为什么再进入Fragment里面调用getActivity会返回null
所以就在OnAttach里面

@Override
public void onAttach(Activity activity) {
    suPEr.onAttach(activity);
    this.activity = activity;
}

然后在MainActivity的OnNewIntent里面重启Activity

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    if (intent.getExtras()!=null){
        if (intent.getExtras().getBoolean("setLanguage",false)){
            MainActivity.this.finish();
            startActivity(new Intent(this, MainActivity.class));
        }
    }
}

然后在onCreate里面调用核心代码

脚本宝典总结

以上是脚本宝典为你收集整理的Android 上实现微信微博上的应用语言切换全部内容,希望文章能够帮你解决Android 上实现微信微博上的应用语言切换所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。