0

線形レイアウトの内側にラップされた相対レイアウトの下部にある 2 つのボタンを揃えたいと思います。

お気に入りの表示ボタンを検索ボタンの上に表示できません。この画像でわかるように、大きなスペースがあります。

ここに画像の説明を入力

これが私のコードです:

<?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">
<TextView
    android:text="@string/SearchRestaurantsCity"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tvRestaurantSearchCity" />
<EditText
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/etRestaurantSearchCity" />
<TextView
    android:text="@string/SearchRestaurantsState"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tvRestaurantSearchState" />
<EditText
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/etRestaurantSearchState" />
<TextView
    android:text="@string/SearchRestaurantsCategories"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tvRestaurantSearchCategories" />
<Spinner
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/spRestaurantSearchCategories" />
<RelativeLayout
    android:id="@+id/InnerRelativeLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_alignParentBottom="true">
    <Button
        android:text="@string/btnViewFavoriteRestaurants"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btnViewFavoriteRestaurants"
        style="@style/ButtonText"
        android:padding="5dp"
        android:layout_below="btnSearchRestaurants" />
    <Button
        android:text="@string/btnSearchRestaurants"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btnSearchRestaurants"
        style="@style/ButtonText"
        android:layout_alignParentBottom="true"
        android:padding="5dp" />
</RelativeLayout>

4

4 に答える 4

2

There are 2 things wrong with the XML.

For starters, you can't refer to the button btnSearchRestaurants before it's defined.

Secondly, you've defined btnSearchRestaurants to align-parent-bottom, and then tried to define that btnViewFavoriteRestaurants would be below that button. It should be above it (as per your description).

于 2012-08-19T14:52:48.370 に答える
0

問題は

android:layout_below="btnSearchRestaurants"

そのはず

android:layout_below="@id/btnSearchRestaurants"
于 2012-08-19T14:52:08.270 に答える
0

RelativeLayout 内に表示される最初のボタンを配置しようとしている場合は、次の行を変更してみます。

android:layout_below="btnSearchRestaurants" />

これについて:

android:layout_above="@+id/btnSearchRestaurants" />

スペースの一部は、LinearLayout 内に表示できるレイアウトのすべての要素用に予約されています。+ は、ボタン btnSearchRestaurants が下にあるため、まだ作成されていないためです。

于 2012-08-19T15:01:35.847 に答える
0

あなたのxmlコードでは、この行を修正する必要があると思います

android:layout_below="btnSearchRestaurants"

[レストランの検索] ボタンの上に配置したいので、

android:layout_above="@id/btnSearchRestaurants"

明らかな理由で下を上に変更し (他のボタンの下ではなく上に配置したい)、@id/ を追加しました。これは、ボタン ID を検索するためです。

于 2012-08-20T12:48:25.520 に答える