我正在设计。还有一个用于权重的LinearLayout。在这些布局中,有ImageViews。 ImageViews显示偏离路线的图片,但是每个图像的纵横比都不同。然后,我想对ImageView的所有表面使用ImageView scaleType属性。但是什么都没有改变。在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>
答案 0 :(得分:0)
使用
android:scaleType="centerCrop"
,请通过下面的网址 http://developer.android.com/reference/android/widget/ImageView.html#attr_android:scaleType 如果您需要进一步说明。
答案 1 :(得分:0)
将属性用于图像缩放比例
android:scaleType="fitXY"
答案 2 :(得分:0)
实际上,ScaleType=fitXY
和ScaleType=center
是完全不同的。
fitXY
将具有固定的高度,然后将图像缩放到适合宽度的高度。您可以在保持图像的高宽比的同时将高度保持在一定的大小,但是可以相应地改变宽度,因此我们仍然能够控制图像的尺寸(种类)并同时保持高宽比
center
只是使图像居中而不缩放它。如果在其中添加adjustViewBounds=true
,则将通过AdjustViewBounds保持ImageView的长宽比。ImageView(不是图像)的大小将保持图像的长宽比。
答案 3 :(得分:0)
删除 android:adjustViewBounds ,然后尝试