QA@IT
«質問へ戻る

質問を投稿

検索アクティビティにリクエストコードを渡したい

onSearchRequestedで検索ボックスを起動して検索アクティビティに移る際に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;

    // ...
    }
}
`onSearchRequested`で検索ボックスを起動して検索アクティビティに移る際に`startActivityForResult`のようにリクエストコードを渡したいのですが、`onSearchRequested`や`startSearch`にそのような引数を渡すことができません。どのようにすればいいでしょうか。

```java
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;

    // ...
    }
}
```