Android相对布局alignParentRight和alignParentEnd

时间:2015-04-11 21:33:22

标签: android android-layout android-relativelayout

我试图弄清楚相对布局的布局参数之间的区别,特别是alignParentRight和alignParentEnd(还有alignParentLeft和alignParentStart)。阅读参考文献没有多大帮助,我认为父母的结尾总是正确的。这有什么不同吗?现在有人贬值吗?

3 个答案:

答案 0 :(得分:9)

  

我认为父母的结局总是正确的

仅适用于从左到右(LTR)语言。对于从右到左(RTL)语言(例如,希伯来语,阿拉伯语),结束是左边,开始是正确的。如果使用endstart属性,则在设置为RTL区域设置的设备上运行时,布局将镜像。如果您使用leftright,则不会镜像。

答案 1 :(得分:3)

让我在@ CommonsWare的答案旁边再加一点。请注意,API级别17中添加了alignStart, alignEndalignParentEnd, alignParentStart,因此您无法在17之前使用这些属性。

https://developer.android.com/reference/android/R.attr.html#layout_alignParentEnd

╔═══════════════════════════════════╦═══════════════════════╗
║ API Level 1                       ║ API Level 17          ║
╠═══════════════════════════════════╬═══════════════════════╣
║ alignBaseLine                     ║ align(Start/End)      ║
║ alignWithParentIfMissing          ║ alignParent(Start/End)║
║ align(Top/Bottom/Left/Right)      ║                       ║
║ alignParent(Top/Bottom/Left/Right)║                       ║
╚═══════════════════════════════════╩═══════════════════════╝

答案 2 :(得分:0)

alignParentEndalignParentStart用于RTL(从右到左)布局,这是一个历史常态。在这种情况下"结束"实际上变成了#34;离开"而不是"对"。如果您为所有视图提供这些属性,您的布局将在RTL布局中看起来像水平翻转,这对这些国家/地区的用户来说更方便。