2

私はまだAndroidプログラミングに慣れていないので、カメラアクティビティがどのようにデータを返すのかよくわかりません。私はビデオチュートリアルから学んでいて、何かを理解するのに問題があるので、そこに行きます(コードからの例外):

int cameraData = 0;

intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, cameraData);

この部分は暗黙の意図でアクティビティを開始し、カメラが結果を返すのを待つことを理解しています

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        bmp = (Bitmap) extras.get("data");
        iv.setImageBitmap(bmp);
    }
}

そして、これはそのアクティビティからデータを受信するのを待ちます。

  • requestCodeから0ですcameraData
  • resultCode写真がRESULT_OK撮られた場合です
  • dataカメラからのデータ受信機です

理解が難しいbmp = (Bitmap) extras.get("data");

特定のデータを取得するために使用する文字列キーをどの程度正確に知る必要がありますか?カメラがどのような種類のデータとどのような形式で結果を返すかについての情報が見つかりません。

4

1 に答える 1

0

ドキュメントには、「データ」キーにはサムネイルが保持されており、完全な画像が必要な場合は、インテントを呼び出してファイル名を指定する必要があると記載putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f))されています。ここで、f はファイルです。

于 2012-12-03T22:49:14.307 に答える