安卓天天练练(十一)用list绑数据
之前在练练ListView的时候就有个
BaseAdapter ba = new BaseAdapter() {
用Adapter来绑数据的方法,该方法中
LinearLayout ll=new LinearLayout(MainActivity.this);
用append的方式追加了文字,
最后return 这个ll对象,
很像html的createElement那样用java构建布局,
onCreate方法内部最后在ListView实例上lv绑定数据:
lv.setAdapter(ba);
有的时候,光用Adapter还不够,需要组织好传入的数据,比如自己构建list
public List<? extends Map<String,Object>> list=new ArrayList<Map<String,Object>>();; int rowCounter = drawable.length;
for(int i =; i< rowCounter; i++){
HashMap<String,Object> hmap = new HashMap< String,Object>();
hmap.put("col1",drawableIds[i]);
hmap.put("col2",this.getResources().getString(nameId[i] ));
hmap.put("col3",this.getResources().getString(msgIds[i] ));
list.add(hmap);
}
return list;
} //Adapter
...onCreate()...
{
GridView gv(GridView)this.findViewById(R.id.GridView01);
SimpleAdapter sca = new SimpleAdapter(
this,
generateDataList(),
R.layout.grid row,
new String[]{"col1","col2","col3"},
new int[]{R.id.ImageView01,R.id....}
};
gv.setAdapter(sca);
此处有三列,对应了一个设计了三列的GridView布局。
<pre><LinearLayout ......>
<TextView... />
<GridView
android:id="@+id/GridView01"
android:layout_height="fill_parent"
android:verticalSpacing="5dip"
android:horizozntalSpacing="5dip"
android:stretchMode="columnWidth" />
</LinearLayout></pre>
其他部分和练练(十)差不多,可以尝试将(十)也改成list绑定数据。
安卓天天练练(十一)用list绑数据的更多相关文章
- 安卓天天练练(十五)改造BasicSyncAdapter
谷歌的官方示例BasicSyncAdapter是Android Studio工程, 把它依样画葫芦到Eclipse上,然后改造成我需要的样式. 看官方示例源码的时候,看到EntryListActivi ...
- 安卓天天练练(十)ListView
ListView不能和ScrollView同时使用,因为它已经包含了滚动支持. 还有个Gallery http://blog.csdn.net/dazlly/article/details/78639 ...
- 安卓天天练练(五)CompoundButton
ToggleButton 让我想起了从前jQuery还没有取消toggle方法时是怎么偷懒的.. 注意: 如果LinearLayout,与RelativeLayout不同,必须有orientation ...
- 安卓天天练练(四)drawable state 属性
今天又作茧自缚(item 写成 itme ╮(╯▽╰)╭ elipse还自动闭合了标签,来回查查查看报错,为啥点击无效呢!) 真欠抽,怪不得上班地铁上被个sb踢到脚趾头(目测有可能是同家公司的..同站 ...
- 安卓天天练练(三)常用组件Toast
要写几句java package com.narumi.android_7_2; import android.app.Activity; import android.os.Bundle; impo ...
- 【mongodb系统学习之十一】mongodb删除数据
十一.mongodb删除数据: 1).删除全部文档:remove,语法db.collectionName.remove({}):小括号里边必须要有条件,否则不成功:如果只是一个空的{},则会删除集合内 ...
- 动态绑数据(Repeater控件HeaderTemplate和ItemTemplate)
前几天,Insus.NET有写了<动态绑数据(GridView控件Header和ItemTemplate)>http://www.cnblogs.com/insus/p/3303192.h ...
- FreeSql (二十一)查询返回数据
FreeSql 采用 ExpressionTree 优化读取速读,如果懂技术的你一定知道 .NETCore 技术下除了原生代码,最快就是 Emit 和 ExpressionTree. 项目在初期使用的 ...
- geotrellis使用(二十一)自动导入数据
目录 前言 整体介绍 前台界面 后台控制 总结 一.前言 之前Geotrellis数据导入集群采用的是命令行的方式,即通过命令行提交spark任务来ingest数据,待数据导入完毕再启动 ...
随机推荐
- android79 Fragment生命周期
切换成01时依次调用onCreate,onStart,onResume方法,切换到03的时候01依次onPause,onStop,onDestroy,03依次onCreate,onStart,onRe ...
- java List排序方法 Comparator和Comparable
今天写的一个程序中需要对一个List进行排序,突然发现自己对这个问题一无所知,于是查阅资料并进行测试,在此做个记录. Collections工具类中有两个方法可以对List进行排序,分别为: publ ...
- Android开发之UI更新交互机制与实例解析
android开发过程中,经常需要更新UI的状态和文案等.这是就需要对UI进行 更新.在android中更新UI一般有三种方法,handler机制.RunOnUiThread方法以及AsyncTask ...
- 利用Gulp实现JSDoc 3的文档编写过程中的实时解析和效果预览
### 利用Gulp实现JSDoc 3的文档编写过程中的实时解析和效果预览 http://segmentfault.com/a/1190000002583569
- Android源码编译过程之九鼎开发板
build_kernel() { # 进入源码顶层目录 cd ${BS_DIR_KERNEL} || # 编译配置文件 make ${BS_CONFIG_KERNEL} ARCH=arm CROSS_ ...
- [Unity官方文档翻译]ScrollRect
官方地址:http://docs.unity3d.com/Manual/script-ScrollRect.html 一边学习一边翻译不知效率如何= = Scroll Rect 在小区域里展示大量内容 ...
- PHP 正则通配符
$a = preg_match('/ph+p/','aaaphpbbbp'); +的前导就是h $a = preg_match('/ph+p/','aaaphhhhhhhhhhpbbbp'); //第 ...
- onTextChanged参数解释及实现EditText字数监听
http://www.picksomething.cn/?p=34 由于最近做项目要检测EditText中输入的字数长度,从而接触到了Android中EditText的监听接口,TextWatcher ...
- python模块学习 logging
1.简单的将日志打印到屏幕 import logging logging.debug('This is debug message') logging.info('This is info messa ...
- Java学习----finally块
public class Test { String x; public static void main(String[] args) { Test test = new Test(); try { ...