gpt4 book ai didi

android - 在搜索请求中使用 Intent 比使用事件监听器启动有优势吗?

转载 作者:行者123 更新时间:2023-11-30 02:01:14 25 4
gpt4 key购买 nike

我查看了 SO,找不到简单的答案。在搜索框上使用 Intent 而非事件监听器将文本发送到查询事件是否有优势?

SearchView searchView =
(SearchView) MenuItemCompat.getActionView(searchMenuItem);

if(searchView != null){
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener(){
@Override
public boolean onQueryTextSubmit(String s) {
Toast.makeText(getApplicationContext(),
"String entered is " + s, Toast.LENGTH_SHORT).show();
return true;
}

@Override
public boolean onQueryTextChange(String s) {
return false;
}
});
}

与使用:

 private void handleIntent(Intent intent){
if(Intent.ACTION_SEARCH.equals(intent.getAction())){
String query = intent.getStringExtra(SearchManager.QUERY);
Log.d(LOG_TAG, "QUERY: " + query);

new FetchArtistTask().execute(query);

}
}

最佳答案

Intent 的优点:

  • Intent 可以指向除带有 SearchView 的 Activity 之外的其他 Activity;
  • 您可以让单个 Activity 处理来自多个其他 Activity 的搜索请求;
  • 处理Intent时可以充分利用不同的Activity启动方式和任务栈;
  • 除了使用 SearchView 之外,还可以通过使用搜索对话框在 Activity 之外(例如在 Dialogs 和 PopupWindows 中)触发搜索 Intent,从而使您的应用程序中的搜索体验更加统一;
  • 当用户点击通知/appwidget 等时,您可以自己进行搜索并从服务发送 Intent。

监听器的优点:

  • 可用于根据用户类型过滤建议列表。

这两种方法并不相互排斥,因此您可以同时使用这两种方法。

关于android - 在搜索请求中使用 Intent 比使用事件监听器启动有优势吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31437002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com