您的位置:首页 > 移动开发 > Android开发

10_android入门_listView的几种Adaptor的实现_SimpleAdapter

2014-06-06 11:01 225 查看
1、数据的获取

public List<Map<String,Object>> getData(){
List<Map<String,Object>> data=new ArrayList<Map<String,Object>>();

SQLiteDatabase db=databaseHelper.getWritableDatabase();
Cursor c=db.rawQuery("select userid,username,userage,userphone from user",null);
while(c.moveToNext()){
Map<String, Object> map=new HashMap<String,Object>();
map.put("_id",c.getInt(c.getColumnIndex("userid")));
map.put("username",c.getString(c.getColumnIndex("username")));
map.put("userage",c.getInt(c.getColumnIndex("userage")));
map.put("userphone",c.getString(c.getColumnIndex("userphone")));
data.add(map);
}
db.close();
return data;
}


2、MVC层的实现

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置显示的视图
setContentView(R.layout.activity_main);

//获取显示的数据 Model
//userDao=new UserDaoImpl(databaseHelper);
//查询获取的数据
//userDao.findAll();

//模型层的实现
databaseHelper=new DatabaseHelper(this);
userDaoImpl=new UserDaoImpl(databaseHelper);
List<Map<String,Object>> data=userDaoImpl.getData();

//控制层 依赖model层
SimpleAdapter adapter=new SimpleAdapter(this, data, R.layout.list_item_user, new String[]{"_id","username","userage","userphone"}, new int[]{R.id.tv_id,R.id.tv_name,R.id.tv_age,R.id.tv_phone});

//视图层的实现 依赖控制层
lv_user=(ListView) findViewById(R.id.lv_user);//获取显示的视图
lv_user.setAdapter(adapter);

//注册事件
lv_user.setOnItemClickListener(this);
}


3、结果的显示

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: