传递搜索字符串以检索Android中的所有联系人

时间:2015-12-05 09:05:41

标签: android contacts

在我的Android应用程序中,我需要检索所有用户联系人。 just read this sample code and tutorial in developer.android.com to do so. 正如本教程所说:

  

在onCreateLoader()中,设置搜索字符串模式。要将字符串转换为模式,请插入“%”(百分比)字符以表示零个或多个字符的序列,或插入“_”(下划线)字符以表示单个字符或两者。例如,模式“%Jefferson%”将匹配“Thomas Jefferson”和“Jefferson Davis”。

从上面的段落我可以理解,如果我需要获取所有联系人,我需要传递“%”作为搜索字符串。但是当我通过时,我什么都没得到。 有谁能够帮我? 感谢。

1 个答案:

答案 0 :(得分:0)

我希望这不会太晚...

// Defines a variable for the search string
private val searchString: String = "_"

// Defines the array to hold values that replace the ?
private val selectionArgs = arrayOf<String>(searchString)

class ContactsFragment : Fragment(),
    LoaderManager.LoaderCallbacks<Cursor> {
    ... }

然后是我的 onCreateLoader 方法

 override fun onCreateLoader(id: Int, args: Bundle?): Loader<Cursor> {
    /*
            * Makes search string into pattern and
            * stores it in the selection array
            */
    selectionArgs[0] = "%$searchString%"
... }

您可以从 Retrieve a list of contacts

获取示例代码