【发布时间】:2010-09-04 11:52:00
【问题描述】:
请告诉我如何解决这个问题。
即使在区域设置语言从 X 更改为 Y 后,状态栏通知消息也会以 X 语言显示。请帮助我需要做什么来刷新它。 例如: 即使将语言环境语言从 En 更改为 Ja ,状态栏通知消息也仅显示在 En 中,即发送状态栏通知的应用程序首次以 En 语言运行。
谢谢 维努戈巴
【问题讨论】:
标签: android
请告诉我如何解决这个问题。
即使在区域设置语言从 X 更改为 Y 后,状态栏通知消息也会以 X 语言显示。请帮助我需要做什么来刷新它。 例如: 即使将语言环境语言从 En 更改为 Ja ,状态栏通知消息也仅显示在 En 中,即发送状态栏通知的应用程序首次以 En 语言运行。
谢谢 维努戈巴
【问题讨论】:
标签: android
理论上,这应该可行:
第 1 步:在您的清单中注册 BroadcastReceiver,注意 ACTION_LOCALE_CHANGED。
第 2 步:当您的 BroadcastReceiver 与 onReceive()、cancel() 一起调用时,如果您的 Notification 在屏幕上,则重新提出您的 Notification。
关键是您需要知道您的Notification 是否在屏幕上。这不是很直接。您可以尝试this StackOverflow answer 中概述的技术,尽管我没有亲自尝试过该技术。我已经提交了一个issue 请求isActive() 方法用于NotificationManager 或等效方法,以帮助填补这一空白。
【讨论】: