您的位置:首页 > 移动开发 > Android开发

android语言切换后通知栏显示的问题

2013-06-04 17:45 2251 查看


关于android语言切换后通知栏显示的问题

之前在移动UIUE项目中发现一个问题:

改变android语言设置,但是状态栏的快捷功能显示文字不会立即发生改变。

同样,下拉通知栏的文字显示在切换语言后也不会同步更新。

于是在项目中引入:

@SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)

public static final String ACTION_LOCALE_CHANGED = "android.intent.action.LOCALE_CHANGED";

解决此问题的关键是在合适的时候和位置添加处理系统在切换语言后发出的广播信息。

比如你有一个IntentFilter,那么你要把ACTION_LOCALE_CHANGED添加到里面。

你要注册一个专门来接收处理系统在切换语言后发出的信息的广播。

例如:

locale信息改变之后,会发广播消息Intent.ACTION_LOCALE_CHANGED,

具体实现在activitymanagerservice.java代码updateConfigurationLocked函数中,

自己写接收代码如下:

1. 接收处理代码:

privateBroadcastReceiver mReceiver = new BroadcastReceiver(){

@Override

publicvoid onReceive(Context context, Intent intent) {

Log.v(TAG, "mReceiver onReceive intent.getAction(): "+intent.getAction());

if(intent.getAction().equals(Intent.ACTION_LOCALE_CHANGED)) {

…//此处做你的处理

}

}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: