Я очень новичок в разработке Android, и я пытаюсь понять, как использовать тег RelativeLayout для размещения моих просмотров. Моя цель - иметь большой TextView слева, с двумя кнопками ButtonViews справа от него, уложенными друг на друга. Здесь используется код XML, который я использую:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/wood_tile">
<TextView
android:id="@+id/life_counter"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="00" />
<Button android:text="@string/button_up"
android:id="@+id/button_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/life_counter"/>
<Button android:text="@string/button_down"
android:id="@+id/button_down"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/button_up"/>
</RelativeLayout>
Я чувствую, что я не должен правильно использовать тег. Может кто-нибудь объяснить, как это работает? Спасибо заранее.
У вас есть ширина TextView с левой стороны, установленная на fill_parent
, это заставит его потреблять весь экран. Все, что находится справа от него, будет за пределами экрана. Используйте wrap_content
или определенную ширину для элементов в относительной компоновке.
Ваш подход тоже немного не работает. Если вы хотите, чтобы две кнопки были выровнены вправо от экрана, используйте это:
<RelativeLayout
android:id="@+id/main_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/life_counter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00" />
<Button android:text="Button Up"
android:id="@+id/button_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"/>
<Button android:text="Button Down"
android:id="@+id/button_down"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/button_up"/>
</RelativeLayout>
android:layout_centerInParent="true
. См. Это решение .