我添加了一个带有ImageView的片段,它是一个PNG图像,下面是TextView。 片段显示正常但是当我旋转屏幕时,图像将占据屏幕的大部分并且TextView被部分剪切。 这是代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/shopping_cart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/shopping_cart" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_below="@id/shopping_cart"
android:text="@string/no_data"
android:gravity="center"/>
</RelativeLayout>
我试图找到一种方法来调整图像大小,以便在屏幕上显示图像和文字
答案 0 :(得分:1)
如果您想要保留相同的图像大小而不是调整图像大小,请尝试使用滚动视图作为根元素。这是一个小片段 -
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<RelativeLayout
android:id="@+id/container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
(all your view elements)
</RelativeLayout>
答案 1 :(得分:0)
以下是代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/shopping_text"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="@string/no_data"/>
<ImageView
android:id="@+id/shopping_cart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@id/shopping_text"
android:src="@drawable/shopping_cart"/>
</RelativeLayout>
答案 2 :(得分:0)
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/text_image_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
(Enter view here)
</LinearLayout>
答案 3 :(得分:0)
好的,首先要确保您拥有所有密度的ImageView图像。我建议您在ImageView代码中使用此属性:
https://developer.android.com/reference/android/widget/ImageView.ScaleType.html
缩放类型定义图像应根据视图缩放的方式。我曾经遇到过类似的问题,我能用这个来解决它。话虽如此,我还没有看到你正在使用的图像,所以我不能很确定。但是,我会说你使用:
android:scaleType="centerCrop"
您可以在上面提供的链接上找到该属性的定义。此外,我不知道您的应用程序针对哪些设备,但始终保持滚动视图内的视图,以便即使在较小的屏幕上也可以看到它们。
尝试一下,如果不是通过centerCrop,那么可能是通过其他一些属性。
干杯!!