Qual é a diferença entre 'left' e 'leading' no contexto do desenvolvimento iOS?
sobes.tech IA
Resposta da IA
No iOS Auto Layout, left e leading são âncoras diferentes para definir restrições, mas têm significados semânticos diferentes.
-
lefté o lado fixo esquerdo da tela, sempre correspondendo ao lado físico esquerdo. Independentemente do idioma da interface,leftsempre indica o lado esquerdo. -
leadingé o lado "principal", que depende da direção do texto (da interface). Para idiomas com direção da esquerda para a direita (LTR), como o inglês,leadingcoincide comleft. Para idiomas com direção da direita para a esquerda (RTL), como árabe ou hebraico,leadingcorresponde ao lado direito.
O uso de leading e trailing é preferível para suportar localização e adaptar a interface a diferentes idiomas e direções de texto. Se usar left e right, a interface não se adaptará automaticamente ao RTL.
Exemplo:
// Restrição à âncora principal do superview (considera a direção do texto)
view.leadingAnchor.constraint(equalTo: superview.leadingAnchor).isActive = true
// Restrição ao lado esquerdo do superview (fixo à esquerda)
view.leftAnchor.constraint(equalTo: superview.leftAnchor).isActive = true
Se desejar que a interface funcione corretamente em RTL e LTR, é melhor usar leading e trailing. Se precisar de uma posição fixa independentemente do idioma, use left e right.