android - Material Design 两行列表

标签 android android-layout android-listview material-design

我想在 Material Design page 中实现此处显示的两行列表项.

首先是我的 xml 文件,它表示要在适配器中使用的列表项:

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

    <TextView
        android:text="Artist"
        android:textSize="16sp"
        android:typeface="sans"
        android:paddingLeft="16dp"
        android:paddingStart="16dp"
        android:id="@+id/textView_artist_name"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

    <TextView
        android:text="10 Albumnes"
        android:textSize="14sp"
        android:typeface="sans"
        android:paddingLeft="16dp"
        android:paddingStart="16dp"
        android:id="@+id/textView_album_count"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

现在,我的问题。我希望两个 TextView 都居中,就像上面的链接一样。但我看到它们在 LinearLayout 的顶部对齐。这是:第一个 TextView 在 LinearLayout 的顶部,第二个在它下面,然后就是所有的空闲空间。我想要做的是看到两个 TextView 都以列表项为中心。

第一次尝试

我使用了 android:layout_gravity="center_vertical",但它不适用于两个 TextView。如果我删除其中一个 TextView,那么另一个就是我想要的位置,但当我添加第二个时则不是。

第二次尝试

我已经尝试在布局中使用 XML 属性 android:WeightSum="2" ,在 TextView 中使用 android:layout_weight="1" ,但都没有用.

我想知道如何才能获得我在此处链接的列表项。 提前致谢!

最佳答案

这将使它们靠近并居中:

<LinearLayout

            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="vertical">

            <TextView
                android:id="@+id/message_title"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Title"/>

            <TextView
                android:id="@+id/message_subtitle"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Subtitle"/>
        </LinearLayout>

layout_gravity 和gravity 有区别:Gravity and layout_gravity on Android

关于android - Material Design 两行列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26390316/

相关文章:

android - 如何为 Android VR View 获取正确格式的 360 VR 视频

android - 如何实现这种布局

android - 检查 View 元素是否以编程方式添加到布局中

Android 简单的 2 行 ListView 示例

java - 包含图像和文本的 ListView 内存不足异常

安卓六角网格

android - 为什么strings.xml和styles.xml中没有DTD?

android - 如何更新另一个 Fragment 中的 ListView?

android - 在我的应用程序关闭后执行 RxAndroid Observables

android - 导致 ListView 行的 onClick 提供编辑选项