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