我如何用 xml 在 android 上复制这个视图?

How can i replicate this View on android with xml?

我正在尝试复制链接的 ListView 的一行,但是在 android。

这是我当前的行代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/venueImage"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:id="@+id/venueLogo"
        android:layout_alignLeft="@id/venueImage"
        android:layout_alignTop="@id/venueImage"
        android:layout_alignRight="@id/venueImage"
        android:layout_alignBottom="@id/venueImage"/>

    <TextView
        android:text="TextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/venueName"
        android:layout_centerHorizontal="true"
        android:layout_alignLeft="@id/venueImage"
        android:layout_alignTop="@id/venueImage"
        android:layout_alignRight="@id/venueImage"
        android:layout_alignBottom="@id/venueImage"
        android:gravity="center"
        android:textColor="#ffffff"/>

</RelativeLayout>

这就是我需要的样子。

如何将一张图片放在另一张图片上,将标题准确地设置在 imageView 的中间,并使另一个 imageView 变圆并定位到右下角? venueImage 是背景(视图中最大的图像)。 venueLogo是圆形的小东西

感谢阅读。

通过将它们全部放在 RelativeLayout 中然后将 venueImage 高度和宽度设置为 match_parent,为标题创建一个 TextView 并将其设置为 Center: android:layout_centerInParent="true" and android:layout_alignParentBottom="true" and android:layout_alignParentRight="true" to your round Image.

编辑:

这应该在您的 RelativeLayout 中

<ImageView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:src="@drawable/palm"
    android:scaleType="centerCrop"/>

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Title"
    android:textSize="40dp"
    android:textColor="@android:color/white"
    android:layout_centerInParent="true"/>

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@mipmap/ic_launcher"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:layout_marginRight="30dp"
    android:layout_marginBottom="20dp"/>

它应该是这样的

figure 1

您尝试过使用框架布局吗?? https://developer.android.com/reference/android/widget/FrameLayout.html

请参阅下面的示例,其中有 3 个文本视图完全按照您的需要显示。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/venueImage"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:background="#000000"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:id="@+id/venueLogo"
        android:text="venue logo"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:background="#FF0000"/>
    <TextView
        android:text="venue name"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/venueName"
        android:layout_centerHorizontal="true"
        android:layout_alignLeft="@id/venueImage"
        android:layout_alignStart="@id/venueImage"
        android:layout_alignTop="@id/venueImage"
        android:layout_alignRight="@id/venueImage"
        android:layout_alignEnd="@id/venueImage"
        android:layout_alignBottom="@id/venueImage"
        android:layout_centerInParent="true"
        android:gravity="center"
        android:textColor="#ffffff"
        android:padding="20dp"/>
</RelativeLayout>

希望对您有所帮助。