如何从右向左绘制元素?
我想要在屏幕右侧有一个按钮,以及一个编辑文本,它占据按钮左侧可以占据的所有位置。我该怎么办?
这个 xml 打印了屏幕左侧的按钮,但之前没有打印任何内容:/
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/index_bouton_recherche"
android:layout_width="45px"
android:layout_height="45px"
android:background="@drawable/loupe"
/>
<EditText
android:id="@+id/index_champs_recherche"
android:layout_width ="fill_parent"
android:layout_height="wrap_content"
android:maxLines="1"
android:layout_toLeftOf="@id/index_bouton_recherche"
/>
I want to have a button at the rigth of the screen, and an edittext which take all the place it can take at the left of the button. How can I do?
This xml print me the button at the left of the screen but nothing before :/
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/index_bouton_recherche"
android:layout_width="45px"
android:layout_height="45px"
android:background="@drawable/loupe"
/>
<EditText
android:id="@+id/index_champs_recherche"
android:layout_width ="fill_parent"
android:layout_height="wrap_content"
android:maxLines="1"
android:layout_toLeftOf="@id/index_bouton_recherche"
/>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当我必须这样做时,我使用
LinearLayout
和layout_weight
xml 属性。此 XML 可以解决您的问题:
layout_width="0dp"
意味着视图最初不需要任何空间。该按钮是wrap_content
,因此它只需要它的空间。layout_weight
属性在之后应用,它共享布局上的剩余空间(方向=水平的宽度,垂直的高度)。默认视图权重为 0,因此如果设置为 1,EditText 将占用 100% 的剩余空间。When I have to do this, I use
LinearLayout
andlayout_weight
xml attribute.This XML would solve your problem:
The
layout_width="0dp"
means that initially, the view won't require any space. The Button iswrap_content
, so it only require its space.The
layout_weight
attribute is applied after, and it shares the remaining space on the layout (the width for orientation=horizontal, height for vertical). Default view weight is 0, so with 1, the EditText will take 100% of the remaining space.试试这个
try this