old*_*god 7 android android-layout android-constraintlayout
如何在LinearLayout中在Constraint Layout中平均节省空间?
例如,如果使用约束编写,下面的布局会怎样?
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<TextView
android:id="A"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
<TextView
android:id="B"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
<TextView
android:id="C"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
<TextView
android:id="D"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
在约束布局中,我可以设置A和D边缘,A?B?D使用33偏置和A?C?D66偏置,在每个元素之间具有相等的空间.
该解决方案并没有真正扩展.
在Constraint Layout中有没有正确的方法呢?
目前(约束布局alpha 6),执行此操作的唯一其他选项是使用具有百分比位置的垂直指南,然后对于每个小部件以这样的方式将它们约束到指南:左侧< - 小部件A - >指南1 < - widget B - > Guideline 2 < - widget C - >右侧
准则1为0.33,准则2为0.66.
但.
虽然它有效,但我怀疑它会比使用线性布局更快地执行此特定任务 - 如果你想要的只是这个确切的行为,只需使用线性布局(甚至在约束布局内).它为您提供约束布局的唯一优势是,您可以仅为给定轴定义此行为,另一个轴可以完全不同地约束(而对于LL,它将被对齐 - 但这是常见的需求) .
虽然我们确实计划在未来版本的约束布局中使这种特定行为更容易做,但这并不意味着不再使用所有现有布局.
| 归档时间: |
|
| 查看次数: |
8121 次 |
| 最近记录: |