1

我正在尝试制作类似于人员应用程序的布局,因此我有一个顶部带有固定标题的列表。我在相对布局内的列表视图顶部定义标题,但列表顶部的“发光效果”仅适用于列表视图,而不是整个布局。

这就是我所拥有的: 在此处输入图像描述

这就是我想要的: 在此处输入图像描述

这是我的布局文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content" >

<LinearLayout 
    android:id="@+id/header_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:clickable="true"
    android:minHeight="20dp"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/status_header"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="@string/last_updated"
        android:textSize="12sp"
        android:textStyle="bold"
        android:textAllCaps="true"
        android:gravity="center|left"
        android:layout_marginLeft="20dp"
        android:layout_marginTop="7dp"
        android:layout_marginBottom="7dp"
        android:textColor="@color/nice_blue" 
        />

    <View style="@style/HeaderDivider"/>

</LinearLayout>

<ListView
    android:id="@+id/status_list"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:headerDividersEnabled="false"
    android:footerDividersEnabled="false"
    android:layout_below="@+id/header_layout" >
</ListView>

4

1 回答 1

1

两个示例中的发光效果功能相同。

People 应用程序中发生的事情是它也ListView和你的一样。效果发生在同一个地方。Me#A等标头实际上位于ListView内。

选项1

要做你想做的事,在 中放一个标题ListView,你还需要创建一个自定义的ListView. 这意味着扩展 ListView.

这听起来比实际更具挑战性,但您应该能够在网上找到一些示例。寻找扩展aListView而不是创建custom ListView的示例。

一般的想法是,您将添加TextView到将充当您的标题View的 the中。ListView这会将标题文本Last updatedListView放在您创建的视图内部,并且由于它在内部,因此它将包含在发光下方。

选项 2

您可能可以在自身上使用addHeaderView(View v, Object data, boolean isSelectable)addHeaderView(View v)方法ListView

我相信这会在 中添加一个标题行ListView,但我从未使用过它,所以我不能确定它是如何工作的。这可能更容易,但灵活性会降低。

于 2013-02-15T18:58:02.380 回答