【数据存储】SQLite数据库存储(10)----- 操作通讯记录的ContentProvider
2013-06-09 17:50
471 查看
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.provider.CallLog; import android.widget.ListView; import android.widget.SimpleAdapter; public class MyCallContentProviderDemo extends Activity { // 定义ListView组件 private ListView callList = null ; // 全部联系人 private Cursor result = null ; // 用于设置SimpleAdapter private List<Map<String,Object>> allCalls = null ; // 联系人信息 private SimpleAdapter simple = null ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.main); this.callList = (ListView) super.findViewById(R.id.callList) ; // 查询通话记录 this.result = super.getContentResolver().query( CallLog.Calls.CONTENT_URI, null, null, null, null); System.out.println("************ " + this.result.getCount()) ; // 交给程序 this.startManagingCursor(this.result) ; this.allCalls = new ArrayList<Map<String,Object>>() ; // 取出数据 for (this.result.moveToFirst(); !result.isAfterLast(); result.moveToNext()) { Map<String,Object> contact = new HashMap<String,Object>() ; // 设置一行的_id内容 contact.put("_id", result.getInt(result.getColumnIndex(CallLog.Calls._ID))); // 取出相匹配的联系人姓名 String nameTemp = this.result.getString( this.result.getColumnIndex(CallLog.Calls.CACHED_NAME)) ; if (nameTemp == null || "".equals(nameTemp)) { nameTemp = "未知" ; } contact.put("name",nameTemp); contact.put("number", result.getString(result.getColumnIndex( CallLog.Calls.NUMBER))); this.allCalls.add(contact) ; } this.simple = new SimpleAdapter(this, this.allCalls, R.layout.calls, new String[] { "_id", "name", "number" }, new int[] { R.id._id,R.id.name, R.id.number }); this.callList.setAdapter(this.simple) ; } }
View Code
相关文章推荐
- 【数据存储】SQLite数据库存储(9)----- 操作联系人的ContentProvider
- 数据库操作_连接SQL Server数据库示例;连接ACCESS数据库;连接到 Oracle 数据库示例;SqlCommand 执行SQL命令示例;SqlDataReader 读取数据示例;使用DataAdapter填充数据到DataSet;使用DataTable存储数据库表;将数据库数据填充到 XML 文件;10 使用带输入参数的存储过程;11 使用带输入、输出参数的存储过程示;12 获得数据库中表的数目和名称;13 保存图片到SQL Server数据库示例;14 获得插入记录标识号;Exce
- 【转】Android使用嵌入式关系型SQLite数据库存储数据【学习记录】
- 使用嵌入式关系型SQLite数据库存储数据之使用SQLiteDatabase操作SQLite数据库
- Android用SQLite数据库对数据存储及操作的总结
- Android数据存储之——SQLite数据库操作
- python数据存储系列教程——python操作sqlite数据库:连接、增删查改、指令执行
- Android 数据存储操作(3)——SQLite数据库
- 使用SQLite数据库存储数据(1)-操作SQLite数据库
- Android开发8:数据存储(二)——SQLite数据库和ContentProvider的使用
- android(18)_数据存储与访问_SQLite数据库_使用SQLiteDatabase操作SQLite数据库及事务
- 使用SQLite数据库存储数据(2)-向表中插入记录
- 操作通讯记录的ContentProvider
- Android数据存储(3)——SQLite数据库的操作_增删改查完整输出
- Android--第三天(XML解析,sharedPreferences进行数据存储,SQLite数据库存储数据,URI,ContentProvider共享数据,监听ContentProvider)
- 9.将数据存储到数据库中处理显示分离SQLite数据库操作,以及也买跳转的注意点
- 数据存储SQLite数据库操作
- 使用SQLite数据库存储数据(4)-删除数据记录
- 【数据存储】SQLite数据库存储(2)----- 使用SQLite数据库并完成更新操作
- android中的数据库操作ZZ 分类: Android数据存储 2014-05-30 10:58 88人阅读 评论(0) 收藏