1.cursor query 方法入参

public final Cursor query (Uri uri, String[] projection,String selection,String[] selectionArgs, String sortOrder)

第一个参数,uri,rui是什么呢?好吧,上面我们提到了Android提供内容的叫Provider,那么在Android中怎么区分各个Provider?有提供联系人的,有提供图片的等等。所以就需要有一个唯一的标识来标识这个Provider,Uri就是这个标识,android.provider.ContactsContract.Contacts.CONTENT_URI就是提供联系人的内容提供者,可惜这个内容提供者提供的数据很少。

第二个参数,projection,真不知道为什么要用这个单词,这个参数告诉Provider要返回的内容(列Column),比如Contacts Provider提供了联系人的ID和联系人的NAME等内容,如果我们只需要NAME,那么我们就应该使用:

Cursor cursor = contentResolver.query(android.provider.ContactsContract.Contacts.CONTENT_URI,

new String[]{android.provider.ContactsContract.Contacts.DISPLAY_NAME}, null, null, null);

当然,下面打印的你就只能显示NAME了,因为你返回的结果不包含ID。用null表示返回Provider的所有内容(列Column)。

第三个参数,selection,设置条件,相当于SQL语句中的where。null表示不进行筛选。如果我们只想返回名称为张三的数据,第三个参数应该设置为:

Cursor cursor = contentResolver.query(android.provider.ContactsContract.Contacts.CONTENT_URI,

new String[]{android.provider.ContactsContract.Contacts.DISPLAY_NAME},

android.provider.ContactsContract.Contacts.DISPLAY_NAME + "='张三'", null, null);

结果:

11-05 15:30:32.188: I/System.out(10271): 张三

第四个参数,selectionArgs,这个参数是要配合第三个参数使用的,如果你在第三个参数里面有?,那么你在selectionArgs写的数据就会替换掉?,

Cursor cursor = contentResolver.query(android.provider.ContactsContract.Contacts.CONTENT_URI,

new String[]{android.provider.ContactsContract.Contacts.DISPLAY_NAME},

android.provider.ContactsContract.Contacts.DISPLAY_NAME + "=?",

new String[]{"张三"}, null);

效果和上面一句的效果一样。

第五个参数,sortOrder,按照什么进行排序,相当于SQL语句中的Order by。如果想要结果按照ID的降序排列:

更多相关文章

  1. Android(安卓)中 动画效果实现
  2. android中SqLite query中用selectionArgs处理字符传值
  3. android 层叠图片形成一张图片
  4. Android(安卓)获取手机联系人信息
  5. 在android里保存数据的三种形式(Saving Data)
  6. Android(安卓)解析excel文件
  7. Android(安卓)实现一个http 带参数登录
  8. mybatisplus的坑 insert标签insert into select无参数问题的解决
  9. Python技巧匿名函数、回调函数和高阶函数

随机推荐

  1. android 黑屏状态下,开屏代码
  2. Android 当前时间的获取
  3. Android 开启闪光灯做手电筒
  4. 初学Android,FrameLayout霓虹灯效果(五)
  5. 应用系统样式延伸
  6. 《Expert Android》关键点摘录之二
  7. 简单播放系统提示音 android
  8. Android Binder设计与实现 – 设计篇
  9. android - Shader 着色器 翻译
  10. Android 技巧 - 网络可用性侦测