当前位置:  编程技术>移动开发

Android中使用ListView绘制自定义表格技巧分享

    来源: 互联网  发布时间:2014-10-18

    本文导语:  先上一下可以实现的效果图  要实现的效果有几方面 1、列不固定:可以根据数据源的不同生成不同的列数 2、表格内容可以根据数据源的定义合并列 3、要填写的单元格可以选择自定义键盘还是系统键盘 奔着这三点,做了个...

先上一下可以实现的效果图
 
要实现的效果有几方面
1、列不固定:可以根据数据源的不同生成不同的列数
2、表格内容可以根据数据源的定义合并列
3、要填写的单元格可以选择自定义键盘还是系统键盘
奔着这三点,做了个简单的实现,把源码贴一下(因为该点是主界面中的一部分,不便于放整个Demo)
自定义适配器,CallBackInterface是自定义的回调接口,这里定义回调是因为数据输入时需要及时保存
代码如下:

public class SiteDetailViewAdapter extends BaseAdapter implements CallBackInterface{
private Context context;
private LayoutInflater inflater;
private ArrayList lists;
private KeyBoard keyBoard = null;//自定义键盘
private ListView listView = null;
private boolean isReadOnly = false;//是否是浏览状态
private String[] arrCellType = null;
private int[] arrHeadWidth = null;//每列宽度

public SiteDetailViewAdapter(Context context, ArrayList lists
,KeyBoard keyBoard,ListView listView,boolean isReadOnly
,int[] arrHeadWidth) {
super();
this.context = context;
this.lists = lists;
inflater = LayoutInflater.from(context);
this.keyBoard = keyBoard;
this.listView = listView;
this.isReadOnly = isReadOnly;
this.arrHeadWidth = arrHeadWidth;
this.listView.setAdapter(this);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return lists.size();
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return arg0;
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return arg0;
}
@Override
public View getView(int index, View view, ViewGroup arg2) {
HashMap map = lists.get(index);
String type = (String)map.get("rowtype");

ArrayList itemCells = new ArrayList();
//String cellValue,String cellKey,long cellType,int cellInRow,int cellSpan
ItemCell itemCellXuHao = new ItemCell((index+1)+"","-1",1,-1,1);
itemCells.add(itemCellXuHao);
for(int i=0;i

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Android Horizontal ListView
  • android ListView的右边滚动滑块启用方法 分享
  • android ListView自动滚动方法
  • android listview 水平滚动和垂直滚动的小例子
  • 滑动刷新的ListView Android PullToRefresh
  • android中如果为listview的item添加listener,也能为item中的button添加listener
  • android中ListView多次刷新重复执行getView的解决方法
  • Android笔记之:在ScrollView中嵌套ListView的方法
  • android ListView 一些重要属性详解
  • Android用ListView显示SDCard文件列表的小例子
  • Android入门之ListView应用解析(一)
  • android基础教程之android的listview与edittext冲突解决方法
  • Android ListView 扩展 DragSortListView
  • android开发之横向滚动/竖向滚动的ListView(固定列头)
  • Android入门之ListView应用解析(二)
  • Android之ScrollView嵌套ListView和GridView冲突的解决方法
  • android开发教程之listview显示sqlite数据
  • android开发教程之listview使用方法
  • Android在listview添加checkbox实现原理与代码
  • Android控件ListView用法(读取联系人示例代码)
  • 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)
  • Android瀑布流实例 android_waterfall
  • Android开发需要的几点注意事项总结
  • Android系统自带样式 (android:theme)
  • android 4.0 托管进程介绍及优先级和回收机制
  • Android网络共享软件 Android Wifi Tether
  • Android访问与手机通讯相关类的介绍
  • Android 图标库 Android GraphView
  • Android及andriod无线网络Wifi开发的几点注意事项
  • 轻量级Android开发工具 Android Tools
  • Android 2.3 下StrictMode介绍




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3