我正在做一个设计。并且有一个用于使用权重的LinearLayout。在这些布局中,有ImageViews。ImageViews显示的图片偏离路线,但每个图像都有不同的纵横比。然后我想要使用ImageView的scaleType属性的图像的封面到ImageView的所有表面。但一切都没变。在Android Studio设计预览中,它可以工作,但当我们安装应用程序模拟器或真实设备时,什么都不会改变。你可以在下面找到XML代码;
等待你的回答;谢谢。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context=".MainActivity"
tools:showIn="@layout/app_bar_main"
android:orientation="vertical"
android:weightSum="12"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:paddingTop="0dp"
android:layout_weight="3"
android:weightSum="3"
>
<ImageView
android:id="@+id/img3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_margin="0dp"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
android:layout_marginRight="0dp"
android:layout_weight="1.5"
android:adjustViewBounds="true"
android:padding="0dp"
android:scaleType="center"
android:src="@drawable/tarot" />
<ImageView
android:id="@+id/img4"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:adjustViewBounds="true"
android:layout_margin="0dp"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
android:layout_marginRight="0dp"
android:layout_weight="1.5"
android:padding="0dp"
android:scaleType="fitXY"
android:src="@drawable/sorusor" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:paddingTop="0dp"
android:layout_weight="3"
android:weightSum="3"
>
<ImageView
android:id="@+id/img3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_margin="0dp"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
android:layout_marginRight="0dp"
android:layout_weight="1.5"
android:adjustViewBounds="true"
android:padding="0dp"
android:scaleType="center"
android:src="@drawable/tarot" />
<ImageView
android:id="@+id/img4"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:adjustViewBounds="true"
android:layout_margin="0dp"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
android:layout_marginRight="0dp"
android:layout_weight="1.5"
android:padding="0dp"
android:scaleType="fitXY"
android:src="@drawable/sorusor" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:paddingTop="0dp"
android:layout_weight="3"
android:weightSum="3"
>
<ImageView
android:id="@+id/magicBallBtn"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
android:layout_marginRight="0dp"
android:layout_weight="1.5"
android:padding="0dp"
android:scaleType="fitXY"
android:adjustViewBounds="true"
android:src="@drawable/magicballbtn" />
<ImageView
android:id="@+id/burcbuton"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:adjustViewBounds="true"
android:layout_margin="0dp"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
android:layout_marginRight="0dp"
android:layout_weight="1.5"
android:padding="0dp"
android:scaleType="fitXY"
android:src="@drawable/burcbtn" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3"
android:orientation="vertical"
android:paddingTop="10dp"
>
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/anaekranbutontasarim"
android:paddingTop="20dp"
/>
<TextView
android:layout_width="180dp"
android:layout_height="40dp"
android:layout_gravity="center_horizontal"
android:background="@drawable/btntasarim1"
android:drawableLeft="@drawable/baseline_star_black_24"
android:text="Kredi Al"
android:textStyle="bold"
android:textSize="20dp"
android:textColor="#fff"
android:textAlignment="center"
android:paddingVertical="5dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:layout_marginTop="15dp"
/>
<TextView
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:layout_gravity="center_horizontal"
android:text="Kalan Kredi: 100"
android:textColor="@color/colorLight"
android:textStyle="bold"
android:textSize="20dp"
/>
</LinearLayout>
</LinearLayout> 发布于 2019-05-09 16:35:49
使用
android:scaleType="centerCrop"如果您需要任何进一步的澄清,请通过下面的url http://developer.android.com/reference/android/widget/ImageView.html#attr_android:scaleType。
发布于 2019-05-09 17:22:14
实际上,ScaleType=fitXY和ScaleType=center是完全不同的。
fitXY将使我们的高度固定,然后它将缩放我们的图像填充宽度。您保持图像的纵横比,同时将高度保持在一定的大小,但让宽度相应地改变,因此我们仍然能够控制图像的大小(某种),同时保持纵横比。
center只将图像居中,而不进行缩放。如果您在其中添加adjustViewBounds=true,您将使用adjustViewBounds保持ImageView的纵横比ImageView的大小(而不是图像)保持图像的纵横比。
发布于 2019-05-09 19:48:32
删除android:adjustViewBounds,然后重试
https://stackoverflow.com/questions/56055197
复制相似问题