私はレイアウト管理に苦労しているので、ここで質問しました。 3つのレイアウトを一定の方法で動作させたいと考えています。 私は3つのビューを、RelativeLayoutに垂直にディスパッチしました(VTop、VMiddle、VBottomと呼ぶ)。正確なアンドロイドレイアウトのサイズを試す
VBottomはボタンです。私は彼が画面の一番下に揃っていて、決して移動したりサイズを変更したりしないようにしたいと考えています。
VMiddleはスクロール表示です。私は、このScrollViewが下のボタン(VBottom)と一番上のレイアウト(VTop)の間のすべての可能な場所を取るようにしたいが、特定のサイズよりも劣っていることは決してない。
VMiddleがその最小サイズよりも小さくならない限り、すべてのコンテンツをラップするVTop(いくつかのTextViewsや他のものを含む線形レイアウト)が必要です。
実際にはコードはほとんど動作していますが、VMiddleにあまりにも多くのコンテンツを注入すると、画面の上部に向かって成長し続け、VTopは完全に消えます。 VTopにコンテンツをラップするのに十分なスペースがない場合、VMiddleを最小サイズに維持します。あなたの答えのための
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/relativeLayout1">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/linearLayout1" <!-- VTop -->
android:layout_above="@+id/eventDetail_RateLayout"
android:layout_alignParentTop="true"
android:layout_margin="10sp"> <!-- LOT OF VIEWS, NEED TO BE WRAPPED AS MUCH AS POSSIBLE -->
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="100px"
android:id="@+id/eventDetail_RateLayout" <!-- Not visible for now, you can ignore it -->
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:minWidth="25px"
android:minHeight="25px"
android:background="@color/common_google_signin_btn_text_light_default"
android:layout_above="@+id/eventDetail_CommentScrollView"
android:visibility="gone" />
<ScrollView
android:id="@+id/eventDetail_CommentScrollView" <!-- VMiddle -->
android:background="#4D4A58"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/eventDetail_commentButton">
<LinearLayout
android:orientation="vertical"
android:minWidth="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/eventDetail_CommentLayout" />
</ScrollView>
<Button
android:text="commenter"
android:id="@+id/eventDetail_commentButton" <!-- VMiddle, this one is doing ok -->
android:background="#666"
android:textColor="#f8f8f8"
android:layout_width="match_parent"
android:layout_height="30sp"
android:layout_alignParentBottom="true" />
</RelativeLayout>
感謝。
利用の重み.... – Zoe