`
iluoxuan
  • 浏览: 580005 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

2:记录开始---list数据适配BaseAdater

 
阅读更多

1: 本来想搭建一个类似EOE客户端的 布局,但是写下来listview就是填充不了数据

 

2:为了解决这个问题, 写几个DEMO ,

 

1: ListView适配  

/**
 * list配置例子
 * @author lijunqing
 */
public class BaseListAdpater extends BaseAdapter {

    private List<ShiCi> list = new ArrayList<ShiCi>();

    LayoutInflater mInflater;

    public BaseListAdpater(LayoutInflater mInflater, List<ShiCi> list) {
        this.mInflater=mInflater;
        this.list=list;
    }

    public int getCount() {
        return list.size();
    }

    public Object getItem(int position) {
        return list.get(position);
    }

    public long getItemId(int position) {
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        ShiCi item = list.get(position);
        HolderView  holder ;
        if(convertView == null){
            holder = new HolderView();
            convertView = (View)mInflater.inflate(R.layout.list_item, null);
            holder.title = (TextView)convertView.findViewById(R.id.item_title);
            convertView.setTag(holder); // 绑定对象
        }else{
            holder = (HolderView)convertView.getTag();
        }
        holder.title.setText(item.getTitle());
        return convertView;
    }

    static class HolderView {
        TextView title;
    }

}

 

采用BaseAdpater 很灵活 ,布局格式可以自定 什么加图片等 

因为这个只是一个DEMO  所以就写死了

如果是项目中  我的大概思路 abstract class BaseListAdater<T> 继承 BaseAdapter

其中 getView() 方法放到每个子类中取实现 即可

 

 MainActivity:

 

public class MainActivity extends Activity {
    
    private ListView listView;
    
    LayoutInflater mInflate;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initList();
    }

    private void initList() {
        mInflate = LayoutInflater.from(this);
        listView = (ListView)findViewById(R.id.list_view);
        BaseListAdpater adapter = new BaseListAdpater(mInflate, getData());
        listView.setAdapter(adapter);
    }
    
    
    private List<ShiCi> getData(){
        List<ShiCi> list = new ArrayList<ShiCi>();
        ShiCi s = new ShiCi();
        s.setTitle("ljq");
        list.add(s);
        ShiCi s1 = new ShiCi();
        s1.setTitle("ddd");
        list.add(s1);
        ShiCi s2 = new ShiCi();
        s2.setTitle("ffff");
        list.add(s2);
        s.setTitle("ddd");
        list.add(s2);
        s.setTitle("gggg");
        list.add(s1);
        s.setTitle("ddd");
        list.add(s);
        s.setTitle("ffff");
        list.add(s);
        return list;
    }

}

 

 

下面看整体的xml布局:

 

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

   <ListView android:id="@+id/list_view"
   	         android:layout_width="match_parent"
             android:layout_height="match_parent"/>

</RelativeLayout>

 

很简单 就一个个ListView组件

 

2: ITEM的布局

 

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:id="@+id/list_item"
	android:layout_width="match_parent"
	android:layout_height="100dp"
	android:background="#Efd211"
	android:minHeight="70dp">
	
    <TextView 
    	   android:id="@+id/item_title"
    	   android:layout_centerInParent="true"
    	   android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="ljq"
           android:textSize="18sp"
           android:textScaleX="2"/>
</RelativeLayout>

 

android:minHeight="70dp" 设置item的高度 height不管用

 

 

界面:

 

就不展示了

分享到:
评论

相关推荐

    数据结构英文教学课件:Linked List-exercise.ppt

    数据结构英文教学课件:Linked List-exercise.ppt

    nvflash_5.567.0.zip

    2、保存BIOS文件:nvflash --save filename。3、对比显卡BIOS版本:nvflash --compare filename。4、升级TV数据:nvflash --tv filename。5、显示BIOS版本:nvflash --version filename。6、显示BIOS字节数:nvflash...

    nvidia 显卡BIOS强刷工具FOR windows32/64位,1低积分

     2、保存BIOS文件:nvflash --save filename。  3、对比显卡BIOS版本:nvflash --compare filename。  4、升级TV数据:nvflash --tv filename。  5、显示BIOS版本:nvflash --version filename。  6、显示BIOS...

    nvflash5.95

    2、保存BIOS文件:nvflash --save filename。3、对比显卡BIOS版本:nvflash --compare filename。4、升级TV数据:nvflash --tv filename。5、显示BIOS版本:nvflash --version filename。6、显示BIOS字节数:nvflash...

    ECSHOP数据结构,表结构,数据库设计

    ### ECSHOP 数据结构、表结构与数据库设计详解 #### 概述 ECSHOP是一款基于PHP语言的开源网上商店系统,具有丰富的功能和良好的用户体验。本文将详细介绍ECSHOP v2.7.2版本中的数据结构、表结构以及数据库设计等...

    BT下载小偷插件 for dvbbs 6.0

    插件名称:---Clasky BT 下载库 插件版本:---V2.0 绿色版 完成时间:---2003-11-5 插件许可:---免费 插件作者:---seasky7 适合论坛:---DV6.0 插件说明:---BT 下载库,提供大量BT数据,...

    kafka_2.9.2-0.8.2.1.tgz

    kafka_2.9.2-0.8.2.1.tgz 安装 liunx环境 ... 2) 删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录删除zookeeper "/brokers/topics/"目录下相关topic节点

    emc dmx-3经典命令手册

    - **示例**:`symcg -create -name cg_name -members member_list` #### symchg - **用途**:用于更改Symmetrix系统中的对象属性。 - **示例**:`symchg -set -object object_name -attribute attribute_value` #...

    T-SQL查询技巧语句(收藏版).txt

    - 在数据迁移或同步后,可以通过比较源表和目标表的数据校验和来检查数据是否完整且正确地复制到了目标表。 #### 六、终止指定进程 **知识点:** 1. **查询进程信息:** - 使用`SELECT 'kill' + RTRIM(spid) ...

    鸡啄米:VS2010-MFC编程入门教程(1-55).docx

    - **列表视图控件ListControl**: - **控件功能**:介绍列表视图控件的作用及应用场景。 - **属性设置**:指导如何设置列表视图控件的属性。 - **树形控件TreeControl**: - **控件功能**:介绍树形控件的作用及...

    数据结构各类查找总结.pdf

    ### 数据结构各类查找总结 #### 一、顺序查找 **结构特点:** - 数据元素采用线性表形式存储,无需特定排序。 **基本思想:** - 从线性表的一端开始,依次对每个元素的关键字与给定值进行比较。 - 若找到匹配项,...

    各公司Java面试题汇总

    #### 2. 类的初始化顺序 - **类成员变量初始化:** - 静态变量 `a` 和非静态变量 `b` 的初始化顺序。 - 构造函数中的 `c` 初始化。 - **示例代码:** - 给出了一段简单的 `Test` 类,包含静态变量、实例变量和...

    EurekaLog_7.5.0.0_Enterprise

    13)..Added: "User" and "Session" columns to processes list, processes list is also sorted by session first 14)..Added: Support for showing current user processes only 15)..Added: Expanding environment...

    centos7 perl rpm依赖包

    perl-Scalar-List-Utils-1.27-248.el7.x86_64 perl-File-Temp-0.23.01-3.el7.noarch perl-File-Path-2.09-2.el7.noarch perl-threads-shared-1.43-6.el7.x86_64 perl-threads-1.87-4.el7.x86_64 perl-Filter-...

    C++课程作业基于跳表实现的轻型键值型数据库源码+项目说明.zip

    实现了对数据的增删改查,以及数据落盘和文件加载数据等功能;对数据库性能进行了简单的压力测试,采用了随机写读的方法,在不同数据规模下获得了每秒可处理请求数(QPS)指标。 &gt; - 如发现文档中或者源代码中有错误...

    Git与Git Shell的安装+使用(远程服务器)-windows

    详见word文档 安装包,详见如下,按照顺序进行安装: 1.运行cmd,输入命令: %SYSTEMROOT%\SYSTEM32\REGSVR32.EXE %SYSTEMROOT%\SYSTEM32\WUAUENG.DLL ...4.查看配置的用户信息:git config --list

    tiger manual

    - 形式为 `type-id{field-list-opt}`,其中 `type-id` 是记录类型标识符,`field-list-opt` 是可选的字段列表。 **数组访问:** - 形式为 `type-id[expr]`,其中 `type-id` 是数组类型标识符,`expr` 是索引表达式...

    SAPMM模块实务码总结

    * ME1X:Buyer's Negotiation Sheet for Vendor - 用于供应商的买方采购谈判记录 * ME1Y:Buyer's Negotiat. Sheet for Material - 买方物料采购谈判记录表 * ME21:Create Purchase Order - 建立采购订单 * ME22:...

    数据结构 期末作业

    ### 数据结构期末作业知识点解析 #### 一、约瑟夫环问题概述 约瑟夫环问题(Josephus problem)是一个经典的计算机科学问题,涉及到数据结构和算法的设计与实现。问题描述如下:有编号为1至n的n个人围成一个圈,从...

    JDBC 多表的增删改查-----Version2.0

    今天简单的写了一个多表的 增删改查 ,首先说以下大体的思路: ... 声明一个List 为主动方的属性 ,LIst中放着 被动方 多方的JavaBean--- 1 对 多 ,多 对多 } 主动方的Dao{ 主动方主动的调用被动方的Dao, } ­

Global site tag (gtag.js) - Google Analytics