我有一个EditText,我想在它的左边有一个ImageButton。我希望我的EditText的宽度为fill_parent,除了为ImageButton留出空间。现在EditText没有离开任何房间。我将它们嵌套在LinearLayout中。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
android:layout_height="wrap_content"
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:orientation="horizontal"
>
<EditText
android:id="@+id/editText1"
android:layout_marginLeft="10dp"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_width="fill_parent"
/>
<ImageButton
android:id="@+id/imageButton1"
android:layout_height="wrap_content"
android:src="@drawable/icon"
android:layout_width="wrap_content"
/>
</LinearLayout>
...
</LinearLayout>
答案 0 :(得分:1)
更改android:layout_width="0dp"
并将android:layout_weight="1"
添加到您的EditText。
答案 1 :(得分:1)
可以非常轻松地使用RelativeLayout来实现这一目标:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<EditText
android:id="@+id/editText1"
android:layout_marginLeft="10dp"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_width="fill_parent"
/>
<ImageButton
android:layout_toRightOf="@+id/editText1"
android:id="@+id/imageButton1"
android:layout_height="wrap_content"
android:src="@drawable/icon"
android:layout_width="wrap_content"
/>
</RelativeLayout>
比将布局嵌入布局更清晰。