如何在一个视图内以不同的图像高度和宽度显示多个图像?

时间:2019-05-23 16:31:32

标签: android android-layout android-cardview cardview

如何在一个视图内显示具有不同图像高度和宽度的多个图像,例如android xml布局中的拼贴视图

enter image description here

1 个答案:

答案 0 :(得分:0)

有几种方法可以使用RelativeLayout,LinearLayout,ConstraintLayout或其他作为父视图来实现。

这是一个使用LinearLayout的示例(您需要替换android:src:"...."引用以匹配您的可绘制文件名,并且您可能希望调整边距):

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
<ImageView
    android:id="@+id/image1"
    android:layout_width="0dp"
    android:layout_weight="2"
    android:layout_height="match_parent"
    android:layout_margin="8dp"
    android:contentDescription="@string/view_profile_cd"
    android:src="@drawable/ic_profile_picture_placeholder" />

<LinearLayout
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="match_parent"
    android:layout_margin="@dimen/medium_border"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/image2"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:layout_margin="8dp"
        android:contentDescription="@string/content_desc"
        android:src="@drawable/ic_add_a_photo"/>

    <ImageView
        android:id="@+id/image3"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:layout_margin="8dp"
        android:contentDescription="@string/content_desc"
        android:src="@drawable/ic_add_a_photo"/>

</LinearLayout>

<LinearLayout
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/image4"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:layout_margin="8dp"
        android:contentDescription="@string/content_desc"
        android:src="@drawable/ic_add_a_photo"/>

    <ImageView
        android:id="@+id/image5"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:layout_margin="8dp"
        android:contentDescription="@string/content_desc"
        android:src="@drawable/ic_add_a_photo"/>

     </LinearLayout>

    </LinearLayout>

结果:

enter image description here