1. ホーム
  2. android

[解決済み] 宣言的に画面幅の半分の幅を割り当てる

2022-08-11 07:30:02

質問

ウィジェットの幅を利用可能な画面幅の半分に割り当て、宣言的なxmlを使用してそれを行うことは可能でしょうか?

どのように解決するのですか?

ウィジェットがボタンの場合

<LinearLayout android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:weightSum="2"
    android:orientation="horizontal">
    <Button android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="somebutton"/>

    <TextView android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"/>
</LinearLayout>

ウィジェットが半分を占め、他のウィジェットが残りの半分を占めるようにしたいのでしょう。 このトリックは、LinearLayout を使って layout_width="fill_parent" を両方のウィジェットに設定し、さらに layout_weight を両方のウィジェットで同じ値に設定します。 2つのウィジェットがあり、両方とも同じ重さである場合、LinearLayoutは2つのウィジェット間で幅を分割します。