Вы используете LinearLayout
в горизонтальной ориентации.Это означает, что он будет перечислять все виды подряд по горизонтали в том порядке, в котором вы их разместили.
Очевидно, что вам нужно изображение рядом с текстом, поэтому есть два способа сделать это.Вы можете использовать два LinearLayouts
.Верхний в вертикальной ориентации, а внутренний в горизонтальной.Внутреннее будет содержать изображение и текст.Внешнее будет содержать внутреннее и кнопку.
Вторым является использование RelativeLayout
, которое позволяет вам устанавливать такие атрибуты, как layout_below
, которые будут размещать кнопку под текстом независимо от того, где вы положили текст.
С двумя LinearLayouts:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_root"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
>
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFF" />
</LinearLayout>
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ok"
/>
</LinearLayout>
С RelativeLayout (проще):
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_root"
android:layout_width="fill_parent"
android:layout_height="fil_parent"
android:padding="10dp" >
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/image"
android:layout_toRightOf="@id/image"
android:text="@string/app_name"
android:textColor="#FFF" />
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/image"
android:layout_below="@id/text"
android:text="ok" />
</RelativeLayout>