Sobes.tech
Middle

Фарқи байни 'left' ва 'leading' дар контексти таҳияи iOS чист?

sobes.tech AI

Ҷавоб аз AI

Дар iOS Auto Layout, left ва leading фарқиятҳои гуногун барои муқаррар кардани маҳдудиятҳо (constraints) мебошанд, аммо онҳо маънои семантикии гуногун доранд.

  • left қисми мустаҳками чапи экран аст, ки ҳамеша ба ҷониби физикии чап мувофиқат мекунад. Бе назар ба забони интерфейс, left ҳамеша ба самти чап ишора мекунад.

  • leading қисми "роҳбар" аст, ки вобаста ба самти матн (самти интерфейс) аст. Барои забонҳои аз чап ба рост (LTR), мисли англисӣ, leading бо left мувофиқат мекунад. Барои забонҳои аз рост ба чап (RTL), мисли арабӣ ё иврит, leading ба тарафи рост мувофиқат мекунад.

Истифодаи leading ва trailing барои дастгирии локализация ва мутобиқсозии интерфейс ба забонҳои гуногун ва самтҳои матн беҳтар аст. Агар left ва right истифода шаванд, интерфейс автоматӣ ба RTL мутобиқ намешавад.

Масалан:

// маҳдудият ба анкораи асосии superview (ба самти матн назар мекунад)
view.leadingAnchor.constraint(equalTo: superview.leadingAnchor).isActive = true

// маҳдудият ба тарафи чапи superview (мувофиқ бо ҷойгиршавии статикӣ)
view.leftAnchor.constraint(equalTo: superview.leftAnchor).isActive = true

Агар хоҳед, ки интерфейс дар RTL ва LTR дуруст кор кунад, беҳтар аст, ки leading ва trailing истифода шаванд. Агар ҷойгиршавии статикӣ бе назар ба забон лозим бошад, left ва right истифода баред.