10

Android アプリケーションの複数言語サポートを表示できることはわかっています。異なる値のフォルダーの例は、values-en 、values-ar です。

私の質問は、言語が変更されたときにレイアウト スタイルを変更できるかどうかです。

英語と同じように、すべてのことは「左から右」から始まりますが、アラビア語はちょうどそれに適しています。選択した言語が英語の場合は左側に画像を配置し、言語がアラビア語に変更された場合はレイアウトを変更することは可能ですか?

4

3 に答える 3

18

アプリケーションのレイアウト方向。ldrtlを意味し"layout-direction-right-to-left"ます。ldltrを意味"layout-direction-left-to-right"し、デフォルトの暗黙的な値です。

layouts, drawablesこれは、 、 、などの任意のリソースに適用できますvalues

たとえば、特定のレイアウトを に提供しArabic language、その他の「右から左へ」言語 (ペルシア語やヘブライ語など) に一般的なレイアウトを提供する場合は、次のようになります。

res/
layout/   
    main.xml  (Default layout)
layout-ar/  
    main.xml  (Specific layout for Arabic)
layout-ldrtl/  
    main.xml  (Any "right-to-left" language, except
              for Arabic, because the "ar" language qualifier
              has a higher precedence.)

注:アプリのレイアウト機能を有効にするには、 およびに設定するright-to-left必要があります。supportsRtl"true"set targetSdkVersion to 17 or higher.

于 2013-09-05T05:37:53.517 に答える
2

言語が変更されたときにレイアウト スタイルを変更できますか。

はい。ユーザーが選択する言語に応じて、さまざまなレイアウトを提供できます。これは、リソースの提供のドキュメントで明確に説明されています。

実際には、右から左方向の言語をサポートするために、特定のレイアウト修飾子が提供されていres/layout-ldrtlます。

PS: この属性は API 17 以降でのみサポートされます。

于 2013-09-05T05:19:48.267 に答える