我想实现一个特定的行布局,但无法用Android

时间:2017-06-05 15:30:30

标签: android listview layout

我正在努力实现这个目标:

enter image description here

在ListView上的

但是不能完全对行layout.xml中的项目有所限制,任何人都有建议吗?

这是我的photo_album_row_layout.xml:

<?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">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/photoAlbumTitle"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true"
        android:layout_centerVertical="true"
        android:textColor="@android:color/black"
        android:paddingBottom="@dimen/default_padding"
        android:textStyle="bold"
    />
    <TextView
        android:id="@+id/photoAlbumDesc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_centerVertical="true"
        android:textColor="@android:color/black"
        android:layout_below="@+id/photoAlbumTitle"
        android:layout_toStartOf="@+id/viewPhotoAlbum"/>

    <ImageView
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_alignParentEnd="true"
        android:id="@+id/viewPhotoAlbum"/>

    <TextView
        android:id="@+id/viewPhotoAlbumText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAlignment="center"
        android:textSize="12sp"
        android:textColor="@android:color/black"
        android:text="Open Album"
        android:layout_alignStart="@+id/viewPhotoAlbum"
        android:layout_alignEnd="@+id/viewPhotoAlbum"
        android:layout_below="@+id/viewPhotoAlbum"/>

</RelativeLayout>

如果只显示标题,似乎将文本置于中心状态,否则会出现重叠,这就是我的意思:

enter image description here

1 个答案:

答案 0 :(得分:1)

试试这个:

<?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="wrap_content">

<LinearLayout
    android:layout_toStartOf="@+id/imageLayout"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:layout_centerVertical="true">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/photoAlbumTitle"
        android:textColor="@android:color/black"
        android:text="Hello world its title"
        android:textStyle="bold"
        />
    <TextView
        android:id="@+id/photoAlbumDesc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:text="Hello world its description"
        android:textColor="@android:color/black"/>
</LinearLayout>

<RelativeLayout
    android:id="@+id/imageLayout"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:layout_alignParentEnd="true"
    android:gravity="center">
    <ImageView
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:src="@mipmap/ic_launcher"
        android:id="@+id/viewPhotoAlbum"/>

    <TextView
        android:id="@+id/viewPhotoAlbumText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAlignment="center"
        android:layout_alignStart="@+id/viewPhotoAlbum"
        android:layout_alignEnd="@+id/viewPhotoAlbum"
        android:layout_below="@+id/viewPhotoAlbum"
        android:textSize="12sp"
        android:textColor="@android:color/black"
        android:text="Open Album"/>
</RelativeLayout>

</RelativeLayout>