博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
赵雅智_ListView_SimpleAdapter
阅读量:5893 次
发布时间:2019-06-19

本文共 2468 字,大约阅读时间需要 8 分钟。

项目步骤

  1. 声明listView控件并获取显示的视图
  2. 获取显示的数据
  3. 设置显示的adapter
  4. 注冊点击事件

详细案例

实现效果:

查找的方法

public List
> getData() { SQLiteDatabase db = dh.getWritableDatabase(); List
> data = new ArrayList
>(); Cursor c = db .rawQuery( "select userid ,username,userage,usersalary,userphone from users", null); while (c.moveToNext()) { Map
map = new HashMap
(); map.put("id", c.getInt(c.getColumnIndex("userid"))); map.put("name", c.getString(c.getColumnIndex("username"))); map.put("age", c.getInt(c.getColumnIndex("userage"))); map.put("phone", c.getString(c.getColumnIndex("userphone"))); data.add(map); } db.close(); return data; }

布局文件

同BaseAdapter的布局文件activity_main.xml

ArrayAdapter实现类(主程序)

package com.example.android_sqlite;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.database.Cursor;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.SimpleCursorAdapter;import android.widget.Toast;import com.example.android_sqlite.dao.impl.UserDaoImpls;import com.example.android_sqlite.database.DatabaseHelper;/** * SimpleAdapter *  * @author zhaoyazhi *  */public class MainActivity extends Activity implements OnItemClickListener {	private ListView lv_users;// 视图层	// model层 相关的对象的声明	private DatabaseHelper dh;	private UserDaoImpls userDao;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		// 模型层		dh = new DatabaseHelper(this);// 创建数据库		userDao = new UserDaoImpls(dh);// 获取显示数据 model		List
> data = userDao.getData();// 查询获取数据 // 控制层 依赖于模型层 SimpleAdapter adapter = new SimpleAdapter(this, data, R.layout.item_phone, new String[] { "name", "phone", "id", "age" }, new int[] { R.id.tv_name, R.id.tv_phone, R.id.tv_id, R.id.tv_age }); // 视图层 依赖于控制层 lv_users = (ListView) findViewById(R.id.lv_users); lv_users.setAdapter(adapter); // 注冊点击事件 lv_users.setOnItemClickListener(this); } @Override public void onItemClick(AdapterView
parent, View view, int position, long arg3) { // 获取点击我的数据 Toast.makeText(this, parent.getItemAtPosition(position) + "", 0).show(); }}

转载于:https://www.cnblogs.com/clnchanpin/p/6919737.html

你可能感兴趣的文章
分页器(自定制)
查看>>
视频直播点播nginx-rtmp开发手册中文版
查看>>
PHP队列的实现
查看>>
单点登录加验证码例子
查看>>
[T-SQL]从变量与数据类型说起
查看>>
occActiveX - ActiveX with OpenCASCADE
查看>>
BeanUtils\DBUtils
查看>>
[转]理解Linux文件系统之inode
查看>>
python模块--os模块
查看>>
linux下单节点oracle数据库间ogg搭建
查看>>
swift三方库
查看>>
POJ NOI0105-42 画矩形
查看>>
Java 数组在内存中的结构
查看>>
《关爱码农成长计划》第一期报告
查看>>
学习进度表 04
查看>>
谈谈javascript中的prototype与继承
查看>>
时序约束优先级_Vivado工程经验与各种时序约束技巧分享
查看>>
minio 并发数_MinIO 参数解析与限制
查看>>
mysql 应用程序是哪个文件夹_Mysql 数据库文件存储在哪个目录?
查看>>
mysql半同步和无损复制_MySQL半同步复制你可能没有注意的点
查看>>