自定义LISTVIEW

原创 2012年03月24日 01:07:20
package cn.edu.siso;


/** 表示一个文件实体 **/
public class FileInfo {
    public String Category;
    public String Status;
    public String Theme;
    public String PublicationTime;
    public String Clicks;
    public String Department;
    

}

package cn.edu.siso;

import java.util.List;
import java.util.Map;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

public  class FileAdapter extends BaseAdapter{
    //生成一个inflater对象
    private LayoutInflater inflater;
    private List<Map<String,Object>> FileList;
    
    
    
    public  FileAdapter(Context context,List<Map<String,Object>> filelist){
        FileList=filelist;
        //
        inflater=LayoutInflater.from(context);
    }
    //返回当前adapter中有多少个item
    public int getCount() {
        // TODO Auto-generated method stub
        return FileList.size();
    }
    //根据位置得到相应的item对象
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return FileList.get(position);
    }
    //根据位置得到相应的item的ID
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        ViewHolder holder = null;
        if(convertView==null){
            //填充每一行item如何显示的XML
            //调用inflater对象的inflate方法,可以生成一个View对象
            convertView=inflater.inflate(R.layout.file_item, null);
            holder = new ViewHolder();
            //得到View中得控件
            holder.category=(TextView)convertView.findViewById(R.id.Category);    
            holder.clicks=(TextView)convertView.findViewById(R.id.Clicks);    
            holder.status=(TextView)convertView.findViewById(R.id.Status);    
            holder.publicationTime=(TextView)convertView.findViewById(R.id.PublicationTime);    
            holder.theme=(TextView)convertView.findViewById(R.id.Theme);    
            holder.department=(TextView)convertView.findViewById(R.id.Department);    
            
            convertView.setTag(holder);
        }else{
            holder=(ViewHolder)convertView.getTag();
        }
    holder.category.setText((String)FileList.get(position).get("Category"));
    holder.clicks.setText((String) FileList.get(position).get("Clicks"));
    holder.status.setText((String)FileList.get(position).get("Status"));
    holder.publicationTime.setText((String)FileList.get(position).get("PublicationTime"));
    holder.theme.setText((String)FileList.get(position).get("Theme"));
    holder.department.setText((String)FileList.get(position).get("Department"));
    //返回对象
    return convertView;
    }
    
    
    
    public class ViewHolder{
        public TextView category;
        public TextView clicks;
        public TextView status;
        public TextView publicationTime;
        public TextView theme;
        public TextView department;
            
        }    
}

剩下的直接setadapter就行了

Android自定义ListView

使用ListView控件+BaseAdapter实现如下图所示的功能。 要求:ListView中文字的长度小于等于3,图标显示为为“猫”,文字长度在3到5之间的,图标显示为“小狗”,其它情况下图标显示...
  • zml_2015
  • zml_2015
  • 2015年10月27日 19:04
  • 6907

Android UI设计——ListView控件和自定义Adapter(四)

自定义Adapter   这个是ListView中使用最多的一个Adapter适配器,因为我们可以根据自己的意愿去创建数据和数据的布局样式。使用方式灵活,下面我们来学习一下自定义Adapter的具体步...
  • To_be_Designer
  • To_be_Designer
  • 2015年08月25日 20:35
  • 6810

c#winform自定义listview,解决listview闪缩问题,添加listview单元格单击事件。

//代码简单就不解释了  [Description("解决listview闪烁问题,和添加listview单元格单击事件")]     public partial class HListView...
  • shizhen_2012
  • shizhen_2012
  • 2016年06月23日 15:58
  • 749

ListView自定义itemView

ListView显示数据的时候,应该是数据控制View的显示每个item对应xml文件:
  • u013708985
  • u013708985
  • 2015年08月23日 17:06
  • 917

Android UI--自定义ListView(实现下拉刷新+加载更多)

Android UI--自定义ListView(实现下拉刷新+加载更多) 关于实现ListView下拉刷新和加载更多的实现,我想网上一搜就一堆。不过我就没发现比较实用的,要不就是实现起来太复...
  • wwj_748
  • wwj_748
  • 2013年10月09日 16:43
  • 28092

向Dialog中加入自定义ListView

在向Dialog中加入自定义ListView的时候,出现了众多问题和解决方法 自定义View有ListView,TextView和button(Alertdialog自带的) Q:Dialog打开...
  • jackuhan
  • jackuhan
  • 2014年04月27日 21:44
  • 2176

Android之如何自定义ListView样式

如何自定义TextView呢? (见截图)     android:layout_width="match_parent"     android:layout_height="match_...
  • wei_chong_chong
  • wei_chong_chong
  • 2015年08月13日 08:47
  • 826

Android学习-自定义ListView中的分割线

ListView中每个Item项之间都有分割线,设置android:footerDividersEnabled表示是否显示分割线,此属性默认为true。 1.不显示分割线只要在ListView控...
  • cnmilan
  • cnmilan
  • 2014年11月11日 20:58
  • 1108

Android 自定义Adapter以实现自定义填充ListView的Item

1>实体类---即ListView中各个Item中填充的内容 package com.demo.cxc.compoundview.com.demo.cxc.entity; import java....
  • cxc19890214
  • cxc19890214
  • 2015年04月15日 00:42
  • 1593

Android studio 中如何创建自定义的ListView

好多安卓相关的书上都会这样介绍ListView控件:最常用和最难用的控件。其实呢,对于这个控件,只要你理清楚了关系,其实理解和编写起来还是会顺畅和胸有成竹许多。下面我们就来捋一捋编写ListView控...
  • qq_37679984
  • qq_37679984
  • 2017年03月11日 15:47
  • 2113
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:自定义LISTVIEW
举报原因:
原因补充:

(最多只允许输入30个字)