Android layout 为什么';TextInputLayout是否跟随父约束Layout的宽度?
您可以在这里看到,我有一个CardView,它是ConstraintLayout的父级 此外,CardView布局的宽度设置为与父级匹配。并且ConstraintLayout设置为与父项匹配。因为CardView和ConstraintLayout是整个布局区域的宽度,所以所有这些都有效 问题 您还可以看到我有一个TextInputLayout,它是ConstraintLayout的子级。布局宽度的唯一设置选项是匹配约束(如下图所示) 当我选择match_constraint时,该值会自动设置为0dp,小部件在屏幕上显示为0dp 这是一个Bug吗? 为什么TextInputLayout不跟随ConstraintLayout的宽度(整个布局的宽度)——类似于match_父级?Android layout 为什么';TextInputLayout是否跟随父约束Layout的宽度?,android-layout,android-cardview,android-constraintlayout,Android Layout,Android Cardview,Android Constraintlayout,您可以在这里看到,我有一个CardView,它是ConstraintLayout的父级 此外,CardView布局的宽度设置为与父级匹配。并且ConstraintLayout设置为与父项匹配。因为CardView和ConstraintLayout是整个布局区域的宽度,所以所有这些都有效 问题 您还可以看到我有一个TextInputLayout,它是ConstraintLayout的子级。布局宽度的唯一设置选项是匹配约束(如下图所示) 当我选择match_constraint时,该值会自动设置
你能告诉我解决这个问题的正确方法吗?TextInputLayout的布局宽度是否应该设置为不同的值?如果查看布局的XML,我会看到TextInputLayout的以下内容
<android.support.design.widget.TextInputLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/description_layout"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent">
然后布局看起来像我期望的那样。这似乎解决了问题。对吗
对于
视图
不应使用match\u parent
,这些视图是ConstraintLayout
的子视图,如下所述:
重要提示:对于ConstraintLayout中包含的小部件,不建议使用MATCH_父项。类似的行为可以通过使用MATCH_约束来定义,并将相应的左/右或上/下约束设置为“parent”
在本例中,您缺少的是文本输入布局
的结束
约束。要使用0dp
(匹配约束),需要为该尺寸指定两个约束:
<android.support.design.widget.TextInputLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/description_layout"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent" />
我试过了,这就是我需要的答案。非常感谢。如果没有你的帮助,我永远不会知道去寻找它。
<android.support.design.widget.TextInputLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/description_layout"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent" />