Imageview图像响应

时间:2018-02-19 12:52:37

标签: android android-imageview android-relativelayout

我有3张PNG格式的图像。它们的分辨率相同,我希望它们在相对布局中彼此相邻。我希望它能够响应,例如,图像视图应根据提供的空间调整大小。我不想在dps中给出固定的高度和宽度,如:

<ImageView
            android:layout_width="60dp"
            android:layout_height="100dp"/>

如果我尝试定义宽度和高度,如:

<ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>

如果我这样做,那就太大了。我该怎么办?有什么建议吗?

编辑: 这是代码:

<RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/streetlong">
        <ImageView
            android:layout_width="60dp"
            android:layout_height="100dp"
            android:id="@+id/btn_hospital"
            android:onClick="onClick"
            android:background="@drawable/hospital"
            />

        <ImageView
            android:id="@+id/btn_pharmacy"
            android:layout_width="60dp"
            android:layout_height="100dp"
            android:layout_marginLeft="@dimen/_15sdp"
            android:onClick="onClick"
            android:layout_toRightOf="@+id/btn_hospital"
            android:layout_toEndOf="@+id/btn_hospital"
            android:background="@drawable/pharmacys" />
        <ImageView
            android:id="@+id/btn_police"
            android:layout_width="60dp"
            android:layout_height="100dp"
            android:layout_marginLeft="@dimen/_15sdp"
            android:layout_toRightOf="@+id/btn_pharmacy"
            android:layout_toEndOf="@+id/btn_pharmacy"
            android:layout_weight="1"
            android:background="@drawable/polices"
            android:onClick="onClick" />
    </RelativeLayout>

我希望图像视图根据屏幕尺寸进行调整,我不想给它们高度和宽度

2 个答案:

答案 0 :(得分:2)

您可以使用属性android:layout_weight

来实现此目的
  <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
       >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:weightSum="3>
        <ImageView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"/>

        <ImageView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:src="@mipmap/ic_launcher"
            android:layout_weight="1"/>

        <ImageView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"/>
    </LinearLayout>
    </RelativeLayout>

答案 1 :(得分:2)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:layout_height="wrap_content"
    >

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"/>

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"/>

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"/>

</LinearLayout>