【发布时间】:2017-01-18 15:40:18
【问题描述】:
我想制作三个高度相同的布局
- 我想要滚动视图中的所有三个线性布局
- 每个线性布局都是水平方向,并且有两个组件 ImageView 和 Textview
- 在所有三个布局文本视图中都有不同的文本行
- 现在我希望每个布局大小都相同,如果文本行更小的话
在图像中,您可以看到我遇到的确切问题,我希望橙色行高度为蓝色行和黄色行。但是你看到黄色的行高不一样
我的xml代码如下
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="0.4"
android:orientation="horizontal">
<ImageView
android:id="@+id/frag_home_iv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@android:drawable/sym_def_app_icon" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="0.6"
android:orientation="vertical">
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_gravity="center"
android:layout_weight="0.26"
android:background="@color/colorAccent"
android:orientation="vertical"
android:padding="@dimen/padding_5dp">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:padding="@dimen/padding_3dp"
android:weightSum="1">
<ImageView
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="0.33"
android:padding="@dimen/margin_5dp"
android:src="@android:drawable/sym_def_app_icon" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.67"
android:text="asdsdgvsfdagsmdknsdjkcjkcbvuhsdjkfnh sjvnfslbvhsdfglsfvbfvufvgl,fgklcm,.vngkg.f,gm kjfbkjvn,dfmgkjhfgasfgkksfgmkdjfbndfbjkdnh,.dghlkgd"
android:textColor="@color/BlackColor" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_gravity="center"
android:layout_weight="0.74"
android:orientation="vertical"
android:weightSum="1"
>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_marginTop="@dimen/margin_8dp"
android:layout_weight="1"
android:background="@color/HomeListItem2"
android:orientation="horizontal"
android:padding="@dimen/padding_3dp"
android:weightSum="1">
<ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.3"
android:src="@android:drawable/sym_def_app_icon" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.7"
android:text="sanf,cbjkdbvjdkfnashdfkjnsjabsjdmfnvshbgvbvvbuhfbvgkdfbuhvdfgjkfbghsjkvkcbfgmbfhuvgbfgvfsjghsjvknfvfngvbfuygbvjkakhsdjhgvhfjnuyvhjfdnjgnifhg"
android:textColor="@color/WhiteColor" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_marginTop="@dimen/margin_8dp"
android:layout_weight="1"
android:background="@color/HomeListItem3"
android:orientation="horizontal"
android:padding="@dimen/padding_3dp"
android:weightSum="1">
<ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.3"
android:src="@android:drawable/sym_def_app_icon" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.7"
android:padding="@dimen/padding_10dp"
android:text="awofkldjvugifklgmfhklmfgtnemylktmfedghquafrgmketo"
android:textColor="@color/WhiteColor" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_marginTop="@dimen/margin_8dp"
android:layout_weight="1"
android:background="@color/HomeListItem4"
android:orientation="horizontal"
android:padding="@dimen/padding_3dp"
android:weightSum="1">
<ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.3"
android:padding="@dimen/margin_5dp"
android:src="@android:drawable/sym_def_app_icon" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.7"
android:text="flkghoijhfnigksngaugjknnguhfbjvncuyvgijfgyhfnvjfdnvjkayfgnkdfbvhjcvndfighfdmndfiuhvhnfidjghiudfhguifdhgiuhafgijhnfaiifjgnu8idfhbjkfndbguy"
android:textColor="@color/WhiteColor" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
</LinearLayout>
【问题讨论】:
-
使用权重 here 系统来判断它们的比例 (1/1/1) 或 (2/1/1/1),具体取决于那里的视图层次结构