Apa kegunaan android: supportingRtl = "true" di file xml AndroidManifest

90

Setiap kali saya membuat proyek baru di studio android, saya mendapatkan android:supportsRtl="true"File AndroidManifest aplikasi saya.

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
...
</application>

Apa yang digunakan dalam aplikasi, atau apa keuntungan & kerugiannya ketika saya menambahkan atau tidak menambahkan AndroidManifest aplikasi saya.

pRaNaY
sumber
5
Saya tidak merasa ini sebagai pertanyaan duplikat. Keduanya terkait dengan RTL, tetapi orang yang menelusuri ini akan menunda.
SREE
2
Pertanyaan yang dirujuk sebagai duplikat ini salah. Konteks yang sama sekali berbeda untuk pengguna yang menelusuri pertanyaan.
Jaydev

Jawaban:

85

Menyatakan apakah aplikasi Anda ingin mendukung tata letak kanan-ke-kiri (RTL). Jika disetel ke true dan targetSdkVersion disetel ke 17 atau lebih tinggi, berbagai API RTL akan diaktifkan dan digunakan oleh sistem sehingga aplikasi Anda dapat menampilkan tata letak RTL. Jika disetel ke false atau jika targetSdkVersion disetel ke 16 atau lebih rendah, API RTL akan diabaikan atau tidak akan berpengaruh dan aplikasi Anda akan berperilaku sama terlepas dari arah tata letak yang terkait dengan pilihan Lokal pengguna (tata letak Anda akan selalu dibiarkan -ke kanan).

Nilai default dari atribut ini salah.

Atribut ini ditambahkan di API level 17.

(Sumber: http://developer.android.com/guide/topics/manifest/application-element.html )

Gex
sumber
73

jika Anda sedang membangun sebuah aplikasi dalam bahasa Arab, Urdu, Ibrani, dll ... atau bahasa apapun yang ditulis dari kanan ke kiri Anda harus menetapkan android:supportsRtluntuk true, itulah cara Anda memberitahu tata letak untuk menjadi dari kanan ke kiri, dan Nilai default dari atribut ini salah.

Sarah
sumber
14
Lebih baik dari dokumentasi Google.
CopsOnRoad
1
Terima kasih atas tanggapan yang lain, namun tanggapan semacam ini lebih bermanfaat dan melengkapi dokumentasi. Terima kasih @Sarah.
Nicoolasens
hai, aplikasi saya tidak mendukung bahasa arab tetapi saya menggunakan android: supportRtl = "true" di manifest.xml apakah masalah ini?
ozanurkan
3
@ozanurkan - Tidak masalah. Jawaban ini salah / menyesatkan. android:supportsRtl="true"mengaktifkan dukungan untuk bahasa kanan-ke-kiri. Tanpa ini, layout akan selalu dari kiri ke kanan, namun dengan sendirinya tidak akan merubah layout dari kanan ke kiri. Ini hanya mengaktifkan atribut lain - salah satu dari atribut baru itu mengontrol apakah kiri-ke-kanan atau kanan-ke-kiri.
ToolmakerSteve
10

Dari Panduan API Android:

(developer.android.com/guide/topics/manifest/application-element.html)

Menyatakan apakah aplikasi Anda ingin mendukung tata letak kanan-ke-kiri (RTL).

Jika disetel ke true dan targetSdkVersion disetel ke 17 atau lebih tinggi, berbagai API RTL akan diaktifkan dan digunakan oleh sistem sehingga aplikasi Anda dapat menampilkan tata letak RTL. Jika disetel ke false atau jika targetSdkVersion disetel ke 16 atau lebih rendah, RTL API akan diabaikan atau tidak akan berpengaruh dan aplikasi Anda akan berperilaku sama terlepas dari arah tata letak yang terkait dengan pilihan Lokal pengguna (tata letak Anda akan selalu dibiarkan -ke kanan).

Nilai default dari atribut ini salah.

Atribut ini ditambahkan di API level 17.

bukankah
sumber