1

我想将请求代码传递给可搜索的活动,例如startActivityForResult. 但是onSearchRequestedstartSearch不能通过它。在下面的示例中,我假设在按下菜单图标后,搜索对话框将显示在窗口顶部,我将发送请求代码和查询到可搜索的活动。

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 参考。但是,我不知道如何做到这一点。

4

0 回答 0