如何在 Constraint Layout 中同时应用左约束和右约束时将布局左对齐?
How to align a layout to left while both left and right constraints are applied to it inside Constraint Layout?
这是我要设计的布局:
正如您从图片中看到的,我希望将线性布局限制为项目 A 和项目 B,并且我希望它向左对齐。我找不到任何方法在约束布局中实现它。当我使用这个时:
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="wrap_content"
android:layout_height="@dimen/ui_size_xs">
线性布局移到中间。
当我使用这个时:
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="0dp"
android:layout_height="@dimen/ui_size_xs">
线性布局占据项目 A 和 B 之间的整个区域。
我希望线性布局为 wrap-content
,但也应像图片中那样向左对齐。我能找到的唯一解决方案是创建一个新布局作为该线性布局的父布局,并将 0dp
赋予新的父线性布局,将 wrap-conent
赋予该布局子布局。我不想那样做。有什么方法可以在不创建任何额外布局的情况下实现这一点?
所述
The default when encountering such opposite constraints is to center the widget; but you can tweak the positioning to favor one side over another using the bias attributes:
- layout_constraintHorizontal_bias
- layout_constraintVertical_bias
尝试以下方法,看看是否有效
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="wrap_content"
android:layout_height="@dimen/ui_size_xs"
app:layout_constraintHorizontal_bias="0.3"
app:layout_constraintLeft_toRightOf="item1id"
app:layout_constraintRight_toLeft="item2id">
// try different horizontal bias values to meet your need
这是我要设计的布局:
正如您从图片中看到的,我希望将线性布局限制为项目 A 和项目 B,并且我希望它向左对齐。我找不到任何方法在约束布局中实现它。当我使用这个时:
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="wrap_content"
android:layout_height="@dimen/ui_size_xs">
线性布局移到中间。 当我使用这个时:
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="0dp"
android:layout_height="@dimen/ui_size_xs">
线性布局占据项目 A 和 B 之间的整个区域。
我希望线性布局为 wrap-content
,但也应像图片中那样向左对齐。我能找到的唯一解决方案是创建一个新布局作为该线性布局的父布局,并将 0dp
赋予新的父线性布局,将 wrap-conent
赋予该布局子布局。我不想那样做。有什么方法可以在不创建任何额外布局的情况下实现这一点?
The default when encountering such opposite constraints is to center the widget; but you can tweak the positioning to favor one side over another using the bias attributes:
- layout_constraintHorizontal_bias
- layout_constraintVertical_bias
尝试以下方法,看看是否有效
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="wrap_content"
android:layout_height="@dimen/ui_size_xs"
app:layout_constraintHorizontal_bias="0.3"
app:layout_constraintLeft_toRightOf="item1id"
app:layout_constraintRight_toLeft="item2id">
// try different horizontal bias values to meet your need