您的位置:首页 > 其它

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

2018-01-29 16:41 387 查看
原地址:http://que2010.iteye.com/blog/1335798

为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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: