4

次のように、親の高さに一致するビューが必要です。

<RelativeLayout
    layout_height="wrap_content">

    <LinearLayout
        id="@+id/A"
        layout_height="wrap_content"
        layout_alignParentTop="true">
        ...
    </LinearLayout>

    <LinearLayout
        id="@+id/B"
        layout_height="match_parent"   <-- possible?
        layout_alignParentTop="true">
        ...
    </LinearLayout>

</RelativeLayout>

したがって、線形レイアウトAは100dpと言うように膨らみます。線形レイアウトBは、高さが約50dpに膨らみます。しかし、私はそれを親の高さに一致させたいのですが、この場合、Aに対応するために100dpである必要があります。これを行う方法はありますか?上記のようにレイアウトを取得しましたが、BはAが親コンテナに設定している高さまで拡張されていません。

ありがとう

4

2 に答える 2

6

したがって、match_parentはfill_parentを置き換えました。そして私はRomainGuyが答えたこの質問を見つけました。

親のwrap_contentと子のfill_parentを組み合わせる

彼は、これは機能しないはずだと述べていますが、LinearLayoutで機能するようになり、最近、HoneycombのFrameLayoutでも機能するようになりました。

これに基づいて、これはRelativeLayoutでは機能しない可能性があると推測しますか?

おそらくRelativeLayoutの代わりにLinearLayoutまたはFrameLayoutを使用してみて、それが機能するかどうかを確認してください。

編集これが私がしたことです:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >

    <FrameLayout
        android:layout_height="wrap_content"
        android:layout_width="match_parent">

        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            >
            <TextView  
                android:layout_width="match_parent" 
                android:layout_height="wrap_content" 
                android:text="@string/hello"
                />
        </LinearLayout>

        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            >
            <Button 
                android:layout_height="match_parent"
                android:layout_width="match_parent"
                android:text="TEST"/>
        </LinearLayout>

    </FrameLayout>



</LinearLayout>

文字列の値:

<string name="hello">Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game! Hello World, Game!</string>
于 2012-09-20T18:20:48.723 に答える
-1

単純にalignParentTopとalignParentBottomをtrueに設定してみませんか?それはあなたのために働くはずです。

于 2015-03-20T15:40:32.667 に答える