您的位置:首页 > 其它

为ListView增加Header (可动态修改其中的内容)

2014-02-21 00:00 197 查看

为ListView增加Header (可动态修改其中的内容)

博客分类:
Android入门教程

Listview增加Header

为ListView增加Header (可动态修改其中的内容)

1.新建一个Layout:
demo_list_item_header_view.xml

Xml代码



<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

android:layout_height="wrap_content"

android:layout_width="wrap_content"

xmlns:android="http://schemas.android.com/apk/res/android">

<TextView

android:layout_height="30sp"

android:layout_width="wrap_content"

android:textSize="20sp" android:id="@+id/headerTextView"

android:text="TestListViewHeader" />

</LinearLayout>

2.然后新建一个类,继承自LinearLayout用来显示上面的Layout:
DemoListHeaderView.java

Java代码



package com.zhang.test.view;

import com.zhang.test.R;

import android.content.Context;

import android.util.AttributeSet;

import android.view.LayoutInflater;

import android.view.View;

import android.widget.LinearLayout;

import android.widget.TextView;

public class DemoListHeaderView extends LinearLayout {

private static final String TAG = "DemoListHeaderView";

private Context context;

private TextView textView;

public DemoListHeaderView(Context context) {

super(context);

this.context = context;

View view = LayoutInflater.from(this.context).inflate(R.layout.demo_list_item_header_view, null);

//以下两句的顺序不能调换,要先addView,然后才能通过findViewById找到该TextView

addView(view);

textView = (TextView) view.findViewById(R.id.headerTextView);

}

public void setTextView(String text) {

textView.setText(text);

}

}

3.之后在ListView设置setAdapter之前,一定要在setAdapter之前
加上代码:

Java代码



DemoListHeaderView headerView = new DemoListHeaderView(context);

headerView.setTextView("Header : ");

listView.addHeaderView(headerView);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: