在与父级末尾对齐的图标左侧设置 EditText 的宽度
Posted
技术标签:
【中文标题】在与父级末尾对齐的图标左侧设置 EditText 的宽度【英文标题】:Setting width of EditText on left of icon that is aligned to the end of a parent 【发布时间】:2022-01-08 15:56:03 【问题描述】:<RelativeLayout
android:layout_
android:layout_>
<EditText
android:id="@+id/et_categories_search"
style="@style/loginEditText"
android:layout_
android:layout_
android:background="@drawable/login_edittext_bg"
android:padding="@dimen/large_spacer" />
<ImageButton
android:id="@+id/ib_search"
android:layout_
android:layout_
android:layout_alignParentEnd="true"
android:layout_gravity="center"
android:clickable="true"
android:padding="@dimen/small_spacer"
android:src="@drawable/search_icon" />
</RelativeLayout>
我有一个水平方向的 EditText 和 ImageButton(在这种情况下是一个图标)。该图标对齐到父级的末尾。有没有办法用 EditText 的宽度填充图标的左侧?我不想用layout_weight,我试过RelativeLayout、LinearLayout、ConstraintLayout都没有用。
【问题讨论】:
将android:layout_toStartOf="@+id/ib_search"
添加到Edittext
。
我可以发誓我尝试过这个,或者我使用的是 layout_alignStart。无论哪种方式,你都很棒,因为这有效:)
【参考方案1】:
发布此问题后,我偶然发现了一个修复程序。我提到我不想使用 layout_weight,那是因为我的印象是 EditText 和 ImageButton 都需要提供属性。
我将 ImageButton 的宽度和高度保留为“wrap_content”,并将 EditText 的宽度更改为 0dp,并提供了 1 的 layout_weight 属性。令我震惊的是,它起作用了。
我非常乐意寻找其他方法来实现我的目标。
【讨论】:
以上是关于在与父级末尾对齐的图标左侧设置 EditText 的宽度的主要内容,如果未能解决你的问题,请参考以下文章
为啥使用与父级一起声明的 std::function 在与子级一起使用时会显示错误?