3

(優れたライブラリから)Activity拡張されたmyから、カメラから画像を取得するための簡単な要求を行います。SherlockFragmentActivityActionBarSherlock

public void getPhoto() {
    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(cameraIntent, CAMERA_REQUEST);
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    // .....
}

実行されると、カメラ アプリが開いたとき (写真を撮る前) にゼロ (および一致する)onActivityResult()で呼び出されます。私が写真を撮ってそれを受け入れると、呼ばれません。resultCoderequestCodeonActivityResult()

サポート ライブラリに同様のバグがあることは承知していますがFragment、この問題はFragmentおよびActivity.

私はチェックし、正しいものを呼び出していますstartActivityForResult()(つまり、FragmentまたはActivity)。考えられるあらゆる場所でコードをステップスルーしました。onActivityResultサポート ライブラリが呼び出されないというバグがを使用する場合にFragmentも影響するのではないかと考え始めていますが、ABS が壊れるなんて信じられません。ActivityActionBarSherlockonActivityResult()

私は何を逃したのですか?

4

1 に答える 1

2

マニフェストのActivityように指定されました。singleInstanceこれはと互換性がないことがわかりstartActivityForResult()ました。Activityに変更するsingleTopと、すべて期待どおりに機能します。

于 2012-08-09T15:26:21.640 に答える