0

MainActivity、1 つの NonActivity クラス、および SearchActivity があります。NonActivity クラスは startActivityForResult を呼び出しますが、nonActivity クラスの onActivityResult は呼び出されません。

しかし、テスト目的で実装したときに、MainActivity で呼び出されることがわかりました。可能であれば、 onActivityResult が nonActivity クラスから呼び出されることを教えてください。

これは、NonActivity クラスから呼び出しているコードです。

Intent intent = new Intent(activity, SearchActivity.class);
        //start SearchActivity through intent and expect for result. The result is based on result code, which is REQUEST_DISCOVERY 
        activity.startActivityForResult(intent, REQUEST_DISCOVERY);
    }

回答ありがとうございます。さらにコードが必要な場合は、追加できます。

4

1 に答える 1

2

onActivityResult()NonActivity実際には new を開始したのはクラスではなく、オブジェクトActivityの呼び出しstartActivityForResult()であり、が呼び出される場所であるため、クラスでは呼び出されません。に戻すには、内にメソッドを作成し、から呼び出して、必要な引数を渡します。MainActivityMainActivityonActivityResult()NonActivityNonActivityMainActivity's onActivityResult()

于 2013-04-25T05:56:47.210 に答える