0

xml で 3 つの正方形を並べて描画し、画面を水平方向に塗りつぶします (両側に 12 dp のマージンを引いたもの)。この投稿によると、テーブル レイアウトでこれを乱雑に行うことは可能のようですが、もっと良い方法があるかどうか疑問に思っています。これは、画面全体を垂直に埋める長方形を描画しますが、それ以外の場合は、探していることを行います。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="12dp"
    android:background="#ffffff"
    android:baselineAligned="false"
    android:orientation="horizontal" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:background="@drawable/rectangle" >
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:background="@drawable/rectangle" >
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:layout_weight="1"
        android:background="@drawable/rectangle" >
    </LinearLayout>
</LinearLayout>
4

3 に答える 3

0

最善の解決策は、オーバーライドされたカスタムビューコンポーネントを作成することですonMeasure()

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    super.onMeasure(widthMeasureSpec, widthMeasureSpec);
}
于 2012-12-26T18:19:35.440 に答える