0

アプリを再起動せずにユーザーが切り替える新しいロケールを使用するには、すべての UI を更新する必要があります。それを行う方法はありますか?

たとえば、アプリをテストしたとき、英語を使用していましたが、現在はフランス語を使用するように変更しています。一部の UI はフランス語で表示されるように更新されましたが、一部は英語のままでした。見逃していたものはありますか?

ありがとう!

4

1 に答える 1

1

ロケールがデバイス設定を介して変更された場合、アクティビティのデフォルトの動作は、システムによって自動的に再作成/再起動され、適切な文字列リソースを使用する機会を与えます(もちろん、アプリがロケールごとに異なる文字列リソースを持っている場合)。

これは、構成の変更と呼ばれます。他のタイプの構成変更は、デバイスの回転、フォントサイズの変更などです。ただし、プログラマーは、AndroidManifest.xmlに、どのconficの変更をバイパスするか、またはActivity.onConfigurationChanged()をオーバーライドするかを示すデフォルトの動作をオーバーライドできます。

したがって、(1)アプリロケールでサポートされているそれぞれに専用の文字列リソースがあること、および(2)このタイプの構成変更のデフォルトの構成変更動作を妨げないことを確認してください。

于 2012-06-21T19:18:35.867 に答える