我想知道为什么在Android上实施搜索需要两个活动,一个用于显示SearchView小部件,另一个用于完成实际搜索?
例如,让我们调用SearchView小部件所在的活动,MainActivity和完成搜索的活动SearchActivity。
Android文档建议我将搜索查询发送到SearchActivity,然后在那里进行搜索,但是如果我想在MainActivity上显示搜索结果呢?我可以在MainActivity上实现handleIntent()吗?
答案 0 :(得分:0)
是的,您当然可以在同一活动中实施它。
根据Providing Search with SearchView video,您可以使用setOnQueryTextListener() method直接侦听文本更改,或者当用户提交搜索时(根本不需要可搜索的配置)。
如果您确实要使用可搜索的配置,请确保您的活动按later in the same video使用android:launchMode="singleTop"
。这可以防止多个活动副本彼此重叠。