3 回答
您只需要添加另一个可搜索的文件。您可以随意命名它,所以既然缺少任务,为什么不使用searchable_tasks.xml
?
现在将所有现有文件复制searchable.xml
到此文件中,将 更改searchSuggestPath
为TasksTable
并对searchSuggestIntentData
.
当然,您还必须扩展您的内容提供程序(将这些额外的可能性添加到 URIMatcher 并在查询方法中对相应的 URI 做出反应)。
您应该对所有表“BirthdayWisher_Table”、“Tasks_Table”、“Events_Table”和“BirthdayWisher_Activity”、“Tasks_Activity”、“Events_Activity”分别使用数据库连接来检索所有表信息。希望此链接可以帮助您理解我在说什么。然后您可以解析搜索建议中的所有表格信息
另一种使用 AutoCompleteTextview 的方法
看看这个源代码
SuggestionAdapter 类将参数“type”放入构造函数中。
String type;
public SuggestionAdapter(Activity context, String nameFilter,String type) {
super(context, android.R.layout.simple_dropdown_item_1line);
suggestions = new ArrayList<String>();
this.type=type;
}
然后在 getFilter() 方法上按类型检索信息
List<SuggestGetSet> new_suggestions = db.getInformation(type)
然后使用 AutoCompleteTextView 如下
AutoCompleteTextView acTextView = (AutoCompleteTextView)findViewById(R.id.autoComplete);
acTextView.setAdapter(new SuggestionAdapter(this,acTextView.getText().toString(),"Tasks_Table"));
如果我没有错,您可以通过以下方式实现:
传递活动名称以搜索活动。从意图中获取调用的活动名称。现在你有了被调用的活动名称,你可以做任何你想做的事情。