将视图对齐(appcelerator合金)

时间:2016-07-14 19:49:14

标签: appcelerator titanium-alloy

我正在尝试将视图对齐,我尝试了

右= “0” 我尝试在控制器上获取宽度并减去视图大小而没有成功

<View id="logoutAlignRightContainer" layout="horizontal" width="33%" heigh="40dp" right="0">
  <View id="logoutAlignRight" left="" width="72dp" height="40dp" right="0">
  <Label left="3"  class="button" onClick="logoutEvent" width="Titanium.UI.SIZE">Log Out</Label>
</View>

我想将$ .logoutAlignRight布局到右边,但它保持在左边

2 个答案:

答案 0 :(得分:2)

您需要从logoutAlignRightContainer中删除layout = horizo​​ntal。通过添加,您可以从左侧开始强制子视图布局...

答案 1 :(得分:1)

您的问题的答案是复合布局,请阅读以下基础知识:

Titanium中有三种类型的布局(假设有3个子视图A,B,C):

  1. 复合(默认) - 它始终将所有子视图保持在其中心位置,这就是为什么您始终可以使用任何属性,例如正确顶部底部。 因此,A,B和C将位于相同的中心或彼此之上。
    • 如果您只设置顶部底部,那么它只会确定视图的高度。
    • 如果您只设置,那么它只会确定视图的宽度。
  2. 垂直 - 它以堆叠形式对齐子视图,一个在另一个下面。您仍然可以使用正确顶部底部,但您会发现设置左< / strong>和正确属性很简单,但顶部底部属性可能不会按预期运行,因为顶部底部将与其他子视图相关。
    • 因此,如果您将设置为,则视图将按照堆栈形式左/右对齐。
    • 如果您同时设置,那么它将是视图的宽度。
    • 如果您设置顶部,则会从父顶部边缘计算。
    • 如果设置底部,则会有相同值的底部空间,但子视图仍然位于堆栈顶部或相应位置。
  3. 水平 - 从左到右对齐视图。
    • 如果您设置,则会在视图的左边缘添加空格。
    • 如果您设置右侧,它会在视图的右边缘添加空间,同时保持视图从左侧对齐,因此当您想要在水平布局中设置视图宽度时,它非常有用。 / LI>
  4. 您应该尝试这些布局基础知识,这样您就可以节省宝贵的时间用于进一步开发,很快您就能够有效地进行设计。 Titanium Docs非常有用。