DatabaseHelper helper=new DatabaseHelper(Xiaomu_Alldactor.this); Cursor cursor=helper.queryDactor(); // 定义SimpleCursorAdapter int p=0; final int[] desc = new int[cursor.getCount()]; while(cursor.moveToNext()) { int a2 = cursor.getInt(cursor.getColumnIndex("_id")); desc[p] = a2; p++; } SimpleCursorAdapter simpleAdapter=new SimpleCursorAdapter(Xiaomu_Alldactor.this,R.layout.simple_item,cursor,new String[]{"d_head","d_dname","d_post","d_type","d_content"},new int[]{R.id.t1,R.id.t2,R.id.t3,R.id.t4,R.id.t5}); //设置适配器 list.setAdapter(simpleAdapter); //给ListView添加事件处理 list.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { int cl=desc[i]; Intent intent=new Intent(Xiaomu_Alldactor.this,Xiaomu_Dactor.class); intent.putExtra("num",desc[i]-1); startActivity(intent); } }); } }
时间: 2024-03-19 17:40:29 浏览: 156
这段代码实现了以下功能:
1. 创建了一个 DatabaseHelper 对象 `helper`,用于操作 SQLite 数据库。
2. 通过 `helper.queryDactor()` 方法获取了一个 Cursor 对象 `cursor`,该对象包含了查询到的医生数据。
3. 将 Cursor 对象中 `_id` 列的值保存到数组 `desc` 中,用于在点击 ListView 中的某一项时获取该项对应的医生编号。
4. 创建了一个 SimpleCursorAdapter 对象 `simpleAdapter`,用于将 Cursor 对象中的数据绑定到 ListView 中的每个列表项上。其中,`R.layout.simple_item` 是用于显示每个列表项的布局文件,`new String[]{"d_head","d_dname","d_post","d_type","d_content"}` 表示从数据源中获取哪些列的数据,其中 `"d_head"` 是列表项中头像的数据源列名,`"d_dname"` 是列表项中名称的数据源列名,`new int[]{R.id.t1,R.id.t2,R.id.t3,R.id.t4,R.id.t5}` 表示将数据绑定到布局文件中的哪些控件上。
5. 将 SimpleCursorAdapter 对象设置为 ListView 的适配器,即可实现将 Cursor 对象中的数据显示到 ListView 中。
6. 给 ListView 添加事件处理,当某一项被点击时,获取该项对应的医生编号,并通过 Intent 将该编号传递给另一个 Activity,以便显示该医生的详细信息。
阅读全文