0

そのため、私はいくつかの Android カメラの例に取り組んでいました。

  1. ファイル URI を生成し、それをクラス プロパティに設定する
  2. 次に、パラメータとしてファイル URI を渡してカメラ インテントを呼び出します
  3. onActivityResultファイル URI からファイルをロードして、保存された画像を処理してから表示する

私の質問は次のとおりOnActivityResultです。カメラの意図が呼び出される前に設定されていても、ファイルの URI プロパティを処理するときに null です。メソッドを実装しonSaveInstanceState()、プロパティをバンドルに保存してからロードしましたonCreate-これで問題が解決したようです。ただし、これは、私のアクティビティ onCreate が前または後に呼び出されonActivityResult、プロパティがリセットされることを意味します。

公式の Android の例では、そのファイルの uri 変数を保持するように実装されていないためonSaveInstanceState、何か間違っていますか? がカメラ インテントからトリガーされたonCreateときに、元のアクティビティで が呼び出されるのは正常ですか? onActivityResultアクティビティを に設定する必要がありsingleTopますか?

4

1 に答える 1

0

私の場合、カメラから戻ってきたときに onCreate が呼び出されないため、ファイル (または uri) はまだ良好です...

考えられる可能性は 2 つまたは 3 つしかありません。自分でどこかで手動で終了を呼び出すか、テストしているデバイス/エミュレーターのメモリが不足していて、カムがフォアグラウンドになるか、タスクキラーがあると、アクティビティが強制終了されます。あなたの活動を殺すデバイス...?

そのため、少なくとも常にではありませんが、 onCreate は呼び出されません。知りたい場合は、何か間違ったことをした場合は、コードを投稿する必要があると思います。(とにかく、あなたのように問題を処理するのは良い考えのようですが)

于 2013-10-14T14:04:46.680 に答える