android 在App监听系统语言切换的方法

1.首先在主AndroidMainfest配置文件里配置:android:configChanges=“locale|layoutDirection”
2.在Application中监听的方法:

public class AppContext extends Application{
	public static boolean languageChange=false;
	@Override
	public void onConfigurationChanged(Configuration newConfig) {
	    super.onConfigurationChanged(newConfig);
	    languageChange=true;
	}
}

3:在Activity中监听的方法:

//先注册广播
registerReceiver(languageReceiver, new IntentFilter(Intent.ACTION_LOCALE_CHANGED));  
			
private BroadcastReceiver languageReceiver = new BroadcastReceiver() {  
  	  
        @Override  
        public void onReceive(Context context, Intent intent) {  
            String action = intent.getAction();  
            if(intent.getAction().equals(Intent.ACTION_LOCALE_CHANGED)) { 
            //当前系统语音被更改了
	        } 
        }  
    };

	@Override
	protected void onDestroy() {
		Log.d(TAG, "onDestroy");
		unregisterReceiver(receiver);
		super.onDestroy();
	}
发布了22 篇原创文章 · 获赞 2 · 访问量 473

猜你喜欢

转载自blog.csdn.net/m0_37782318/article/details/105217992