我有以下内容:
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:alpha=".9"
android:background="@color/light_gray_search"
android:padding="16dp">
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="1"
app:hintTextAppearance="@style/TextAppearance.App.TextInputLayout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2"
android:importantForAccessibility="no"
app:srcCompat="@drawable/myImage" />
<AutoCompleteTextView
android:id="@+id/myAutoCompleteTextView"
android:layout_weight="0.8"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:ems="10"
android:hint="@string/myAutoHint"
android:imeOptions="actionNext"
android:inputType="textPersonName"
android:maxLines="1"/>
</com.google.android.material.textfield.TextInputLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
知道TextInputLayout
扩展 LinearLayout
,并且我正在使用LinearLayout
xml属性(weightSum
,orientation
,{ {1}})首先对我的imageView进行水平分配,然后对autoCompleteText进行
为什么这不起作用?
当前结果:即使分配了layout_weight
,图像和文本的宽度也均为零。
答案 0 :(得分:0)
实际上找到了答案,并将其发布在这里以供将来参考:
添加一个LinearLayout
,并使LinearLayout
的子元素在水平方向上分别为ImageView
和TextInputLayout
。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
android:orientation="horizontal"
android:weightSum="1"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toEndOf="parent">
<ImageView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.1"
android:importantForAccessibility="no"
app:srcCompat="@drawable/myImage"
android:layout_gravity="center_vertical"/>
<com.google.android.material.textfield.TextInputLayout
..
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.9"
..>
<AutoCompleteTextView
../>
</com.google.android.material.textfield.TextInputLayout>
</LinearLayout>