Qual è la differenza tra inizio / fine del margine Android e destra / sinistra?


130

Qual è la differenza tra margine di inizio e destra di Android (o margine di fine e sinistra)?

È una domanda banale, ma non riesco a imparare dalla documentazione quale sia la differenza tra vista inizio / fine e sinistra / destra. È possibile che non capisca qualcosa, ma non posso fare alcun progresso con questo.

Risposte:


185

Per flusso da sinistra a destra, inizio = sinistra, fine = destra.

Per flusso da destra a sinistra, inizio = destra, fine = sinistra.

I concetti "inizio" e "fine" sono stati aggiunti in API Level 17, come parte del supporto di Android 4.2 per i layout RTL .


5
Sai quale ha la precedenza se sono diversi? (curiosità). come marginLeft=1 marginStart=2(in uno scenario Left2Right per esempio)
Martin Marconcini,

@ MartínMarconcini: Spero che l'inizio / fine abbiano la precedenza, ma non lo so per certo. Dovresti provarlo.
CommonsWare l'

@Martin Per quello che ho capito, sinistra / destra viene ignorata quando inizio / fine esiste sopra l'API 17. Tuttavia, non riesco a capire perché la tua sinistra / destra differiscano da inizio / fine; Sono curioso.
Liggliluff,

2
@Liggliluff bugs, typos, etc :) Dopo l'API 17 inizio / fine hanno la precedenza e c'è un avviso LINT se si usano ancora quelli vecchi. Sono ignorati, ho provato.
Martin Marconcini,

@Martin Grazie per averlo provato. Sia sinistra / destra vengono ignorate se viene visualizzato solo uno di inizio o fine? (Non avrebbe molto senso logico usare start / right quando saranno gli stessi per gli script RTL).
Liggliluff,

28

Android supporta i layout RTL da API 17+, ovvero Android 4.2 (Jelly Bean) .e quando realizziamo il nostro layout per supportare sia RTL che LTR, non possiamo usare layout_marginleft e layout_marginRight lì usiamo layout_marginstart e layout_maginend.

pic

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.