当我尝试在带有layout_weight和图像的LinearLayout中使用ImageView时,ImageView将占据整个空间。
让我说我有这个布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="10">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/blue"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="8"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:background="@color/red"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/green"/>
</LinearLayout>
布局(屏幕上)如下所示:
(发布图片的声誉不够,抱歉)
////////
BLUE LinearLayout(主要布局的1/10)
////////
RED ImageView(主要布局的8/10)
////////
绿色LinearLayout(主要布局的1/10)
////////
但如果我将图像(大一个......)添加到ImageView:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="10">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/blue"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="8"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:background="@color/red"
android:src="@drawable/splash"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/green"/>
</LinearLayout>
它看起来像这样:
////////
RED ImageView(主要布局的10/10) - 带图像.....
////////
任何人都知道如何让ImageView的src适合给定的空间(主要LinearLayout的8/10) 感谢。
答案 0 :(得分:1)
显然这是android studio预览版的问题(在Android API级别19之前)
在部署到设备时,它可以完美运行....