Android - 问号在searchable.xml中表示什么?

时间:2012-07-20 05:27:18

标签: android-contentprovider searchable android-searchmanager

我在android 4.0上调试 SearchableDictionary示例。在searchable.xml中,问号在此属性android:searchSuggestSelection=" ?"中表示什么?

以下是摘录:

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:label="@string/search_label"
    android:hint="@string/search_hint"
    android:searchSettingsDescription="@string/settings_description"
    android:searchSuggestAuthority="com.example.android.searchabledict.DictionaryProvider"
    android:searchSuggestIntentAction="android.intent.action.VIEW"
    android:searchSuggestIntentData="content://com.example.android.searchabledict.DictionaryProvider/dictionary"
    android:searchSuggestSelection=" ?"   
    android:searchSuggestThreshold="1"
    android:includeInGlobalSearch="true"
    >

感谢。

2 个答案:

答案 0 :(得分:2)

它代表用户键入的查询。请参阅docs

android:searchSuggestSelection [String]

  

此值将传递到您的   查询函数作为选择参数。通常这是一个WHERE   您的数据库的子句,应该包含一个问号,   这是已键入的实际查询字符串的占位符   由用户(例如,“query =?”)。

替代

android:searchSuggestSelection="word MATCH ?"

答案 1 :(得分:0)

这个问题上也出现了问题,SearchableDictionary示例。找不到资源文件夹,因为没有生成R.java,这可能与您遇到的问题相同,这就是您调试XML的原因。这是适合我的解决方案。 link

  1. 右键单击您的项目
  2. 选择属性
  3. 在左侧菜单中选择Android
  4. 勾选相应项目构建目标旁边的框。*****
  5. 单击“应用”和“确定”
  6. 我的其他说明: *****选择高于API 10的构建版本或从API 11开始。如果选择低于11,则仍会出现错误。这对我有用。在此之前尝试了大部分建议。终于解决了。