言語を英語からアラビア語に切り替えると、レイアウトが左から右に変化しています。 textViewを左から右に変更するにはどうすればよいですか? 例(英語)Rameshの走行速度は34kmphです。 (アラビア語)hpmk43は深刻なハチミツである。英語からアラビア語に言語を切り替えるには、右から左に読むことができますか?
編集1:以下の画像が正しいことを確認してください。
言語を英語からアラビア語に切り替えると、レイアウトが左から右に変化しています。 textViewを左から右に変更するにはどうすればよいですか? 例(英語)Rameshの走行速度は34kmphです。 (アラビア語)hpmk43は深刻なハチミツである。英語からアラビア語に言語を切り替えるには、右から左に読むことができますか?
編集1:以下の画像が正しいことを確認してください。
新しいstart/end
同等物に変更してアプリのleft/right
レイアウトプロパティのすべてを。
単に例として、android:gravity
で使用してください。
アプリでManifest
を宣言して、アプリがRTLミラーリングをサポートしていることを忘れないでください。Manifest
ファイルの要素にandroid:supportsRtl="true"
を追加してください。
setLocale("en");
は
setLocale("ar");
//英語
public void setLocale(String lang) {
Locale locale = new Locale(lang);
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config,
getBaseContext().getResources().getDisplayMetrics());
}
英語とLTRは、アラビア語などのロケールを設定し、自動RTLは、後にロケール設定されますアラビア語
設定します。 //アプリを再起動することを忘れないでください。 セットのロケールの後RTLのためのあなたの
TextView
作業を行うには、重力
完璧、良い:) –
を変更する必要はありません、あなたは、RTLのレイアウトプロパティを追加する必要があります。 left-to-right
流れ、start=left
、end=right
についてはandroid:layout_marginRight
の代わりにandroid:layout_marginLeft
と android:layout_marginEnd
の代わりに
使用android:layout_marginStart
。
right-to-left
フローについては、start=right
,end=left
です。
このRTLサポートは、Android 4.2のRTLレイアウトのサポートの一部として、APIレベル17で追加されました。 これはあなたを助けます https://developer.android.com/about/versions/android-4.2.html#RTL
これはRTL言語の仕組みではありません。英語の単語はまだ左から右に読み込まれます。 – ianhanniballake
表示されている文字列の順序を逆にすることを検討しています。あなたの例はアラビア語ではないので、あなたがしようとしていることについてもう少し詳しく説明する必要があります。 – Sufian