4

水平線LinearLayoutが他の2つを保持する複雑なレイアウト状況がありLinearLayoutます。これらのレイアウトのコンテンツは動的であり、任意の種類のビューにすることができ、実行時にさまざまな独立したソースから生成されます。

十分なスペースがある限り両方を表示し、それ以外の場合は使用可能なスペースの50%に制限します。ですから、十分なスペースがあるときとないときに、それらLinearLayoutの子供に持ってもらいたいのです。これは、スペースの分布が10-90、25-75、60-40になる可能性があることを意味します。両方のビューのコンテンツ全体を表示するのに十分なスペースがない場合は、50〜50になります。これまでのところ、XMLからこれを行う方法が見つからないため、コードから行っています。私の質問は、XML属性のみを使用して私が望むことを達成できるかどうかです。別の種類のレイアウトでそれを行うことができますか?layout_width="wrap_content"layout_weight="0.5"

これが私の現在のレイアウトXMLです:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:orientation="horizontal"
    android:padding="2dp" >

    <LinearLayout
        android:id="@+id/title_frame"
        android:layout_width="wrap_content"
        android:layout_height="48dp"/>

    <LinearLayout
        android:id="@+id/options_frame"
        android:layout_width="wrap_content"
        android:layout_height="48dp"/>

</LinearLayout>
4

3 に答える 3

2

これを試して。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:orientation="horizontal"
    android:padding="2dp" >

    <LinearLayout
        android:id="@+id/title_frame"
        android:layout_width="wrap_content"
        android:layout_height="48dp" android:layout_weight="1">

    </LinearLayout>

    <LinearLayout
        android:id="@+id/options_frame"
        android:layout_width="wrap_content"
        android:layout_height="48dp" android:layout_weight="1">

    </LinearLayout>

</LinearLayout>

textviewsで試してみましたが、これはureの要件に従って機能するはずです。

于 2012-04-22T04:56:08.057 に答える
1

これは、XML属性だけでは達成できないようです。

于 2012-05-20T23:30:55.230 に答える
0

ウェイトの概念を使用しているので、layout_width="wrap_content"をlayout_width="fill_parent"に変更します。

于 2012-04-22T03:41:46.157 に答える