2013-09-05 16 views
10

Wiem, że możemy wyświetlać obsługę wielu języków dla naszej aplikacji na Androida z różnymi przykładami wartości folderu-en, values-ar, na przykład .Specyficzny układ językowy dla Androida

Moje pytanie brzmi: czy możemy zmienić nasz styl układu, gdy nastąpi zmiana języka.

Tak jak w języku angielskim, wszystko zaczyna się od "lewej do prawej", ale arabski jest po prostu odpowiedni. , czy możliwe jest umieszczenie obrazu po lewej stronie, gdy wybranym językiem jest język angielski i zmiana układu w przypadku zmiany języka na arabski

+1

można zrobić folder jak 'layout-ar' –

+0

@MMohsinNaeem dzięki kolego. teraz mam telefon LG-P715 z 4.1.2, ale nie pokazuje on języka arabskiego, jak dodać ten język w telefonie komórkowym, aby uzyskać arabską klawiaturę i przetestować układ języka arabskiego. – Bora

+0

Zestaw 'android: layout_grawitacja' i' android: gravity 'na PRAWO. –

Odpowiedz

16

Kierunek układ aplikacji. ldrtl oznacza "layout-direction-right-to-left". ldltr oznacza "layout-direction-left-to-right" i jest domyślną wartością niejawną.

Może to dotyczyć każdego zasobu, takiego jak layouts, drawables lub values.

Na przykład, jeśli chcesz zapewnić pewien specyficzny układ dla Arabic language i jakiś ogólny układ dla każdego innego „prawo-lewo” języka (jak perski lub hebrajskiego) wtedy masz:

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.) 

Uwaga: aby włączyć right-to-left funkcje układu dla swojej aplikacji, musisz ustawić supportsRtl do "true" i set targetSdkVersion to 17 or higher.

2

czy możemy zmienić nasz styl układu, gdy nastąpi zmiana języka.

Tak. Możesz podać różne układy zależnie od języka wybranego przez użytkownika. Jest to wyraźnie opisane w dokumentacji Providing Resources.

W rzeczywistości określony kwalifikator układu jest obsługiwany dla języków kierowanych z prawej do lewej strony o nazwie res/layout-ldrtl.

P.S: Ten atrybut jest obsługiwany wyłącznie z API 17.

Powiązane problemy