android - 用于具有多个子项目的项目列表的自定义适配器?

标签 android android-layout android-linearlayout android-adapter

我将如何为此布局编写适配器。我开始想要使用线性和相对布局创建一个列表,以便每个列表项的子项相对于彼此水平对齐。这是布局文件和 View 的屏幕截图。

我了解如何编写简单的 ListView 和适配器。但只是想知道如何才能获得更复杂的列表,其中包含大量的子列表项。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/trade_scenario_linear_main"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="#8a929d">
    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="?android:attr/listPreferredItemHeight"
        android:padding="6dip"
        android:background="#e8e7e2">

        <ImageView
            android:id="@+id/avatar"
            android:layout_width="65dp"
            android:layout_height="65dp"
            android:layout_alignParentBottom="true"
            android:layout_alignParentTop="true"
            android:contentDescription="TODO"
            android:src="@drawable/avatar_temp" />

        <TextView
            android:id="@+id/username"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignWithParentIfMissing="true"
            android:layout_toRightOf="@id/avatar"
            android:text="Shepherd"
            android:textColor="#ED872D"
            android:textSize="12sp" />

        <ImageView
            android:id="@+id/clock_icon"
            android:layout_width="16dp"
            android:layout_height="16dp"
            android:layout_marginLeft="90dp"
            android:layout_gravity="right"
            android:layout_toRightOf="@id/username"
            android:src="@drawable/clock_icon" />
        <TextView
            android:id="@+id/clock_data"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/clock_icon"
            android:textSize="14sp"
            android:text="22H 30mins"/>

        <ImageView
            android:id="@+id/comments_icon"
            android:layout_width="16dp"
            android:layout_height="16dp"
            android:layout_alignParentBottom="true"
            android:layout_toRightOf="@id/avatar"
            android:src="@drawable/comment" />

        <TextView
            android:id="@+id/comments_num"
            android:layout_width="wrap_content"
            android:layout_height="26dip"
            android:layout_alignParentBottom="true"
            android:layout_alignTop="@+id/comments_icon"
            android:layout_toRightOf="@id/comments_icon"
            android:ellipsize="marquee"
            android:singleLine="true"
            android:text="14"
            android:textSize="12sp" />

    </RelativeLayout> 
</LinearLayout>

最佳答案

创建自定义列表并创建自定义适配器,就像这样 请遵循对您有帮助的教程: Custom Listviews 也遵循更有效的 List View

关于android - 用于具有多个子项目的项目列表的自定义适配器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23485986/

相关文章:

java - '指定的 child 已经有一个 parent 。您必须首先在子级的父级上调用removeView() .' and not sure where I' m 错误

android - TextInputLayout 后缀/前缀

android - 为什么要选择约束布局,因为我们已经有了相对布局?

android - 可滚动的线性布局,重量大于android中的屏幕

带有导航栏重叠控件的Android VideoView全屏

java - 单击按钮时滑入另一个 XML 布局

java - 如何将颜色资源作为参数传递 (Android)

android - 3.2 sdk平台安装问题。 "Done. Nothing was installed"

android - 不同宽度的 RecyclerView

java - Android:SlidingLayer 事件监听器 Onclose