我正在制作一个xml文件,并应用重力使视图内容移动到窗口的最右侧,但我认为重力是正确的。那么,两者之间的实际区别是什么,以及在哪里使用哪一个。
在阿拉伯语、波斯语和所有rtl(从右到左)区域设置中,end
为左,但对于英语和其他ltr(从左到右)区域设置,end
表示右
Left
和right
重性在为希伯来语、阿拉伯语等从右到左语言本地化的应用程序中可能无法正确工作。在这些语言中,左侧和右侧镜像到欧洲语言。如果您对UI的某些元素使用硬编码的left
和right
重力,那么它们可能会在从右到左的本地化中错位。如果您使用begin
和end
,则Android将根据当前系统语言将它们正确映射到left
或right
。因此,英语的begin
等于left
,希伯来语的right
等。
如果你的应用程序有从右到左语言之一的本地化,那么你应该始终使用begin
和end
。否则,您可以安全地与left
和right
住在一起。
在我看来,当我们设置android:orientation="horizontal"在主布局中,那么最好将其子对象的重力设置为开始和结束,以使布局更有效。但是当使用其他方向时,我们也可以使用其他重力形式。