我想将请求代码传递给可搜索的活动,例如startActivityForResult
. 但是onSearchRequested
又startSearch
不能通过它。在下面的示例中,我假设在按下菜单图标后,搜索对话框将显示在窗口顶部,我将发送请求代码和查询到可搜索的活动。
private static final int SEARCH_REQUEST_CODE = 100;
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != RESULT_OK) {
return;
}
switch (requestCode) {
case SEARCH_REQUEST_CODE:
// Something to do after finishing the searchable activity
}
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
Intent intent;
switch (item.getItemId()) {
// ...
case 2:
onSearchRequested(); // I want to pass SEARCH_REQUEST_CODE here!
return true;
// ...
}
}
我已阅读 API 指南 ( https://developer.android.com/guide/topics/search/search-dialog.html ) 中的搜索接口教程和 API 参考。但是,我不知道如何做到这一点。