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();
}