3

カメラにアクセスしてURIを返すアプリを開発しています。このアプリを別のアクティビティに渡して、抽出したビットマップをImageViewに表示します。すべてが正常に機能しているようです。これが、カメラインテントを開始するために使用するコードです。

mCameraButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            mCameraUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, new ContentValues());
            Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, mCameraUri);
            mtimeCameraAcessed = System.currentTimeMillis();
            startActivityForResult(cameraIntent, RECEIVE_CAMERA_PICTURE);
            overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);

        }

});

しかし、私は矛盾に気づきました。アプリケーションがカメラにアクセスすると、画面の下部にあるギャラリーアイコンが表示されないようです(Androidフォンでカメラアプリケーションにアクセスするとアイコンが表示されます)。これを説明するために、スクリーンショットをいくつか添付しました。

ユーザーが気が変わってカメラにアクセスし、同じ画面でギャラリーにアクセスできるようにしたい(ギャラリーアイコンをタップする)。今、私は「Intent.ACTION_PICK」を介してギャラリーインテントを開始する方法を知っています。私もこの質問を見ましたが、私が意図していることを達成するためにカスタムカメラレイアウトが必要であることに完全には同意しません:ユーザーがAndroidのギャラリーから写真を撮ったり画像を選んだりできるようにする単一の意図

私がこれを言う理由は、QuickPicなどのアプリが下部のギャラリーアイコンでカメラアプリケーションにアクセスするのを見たことがあるからです。誰かがこれに光を当てることができますか?

ギャラリーアイコン付きカメラ

ギャラリーアイコンのないカメラ

4

1 に答える 1

2

徹底的な調査を経て、これは事実上不可能であるという結論に達しました。ただし、このようなものが必要な場合は、カメラAPIと組み合わせたカスタムレイアウトが理想的なソリューションになります。しかし、その後、カメラAPIを使用すると、カメラ画面の外観が歪むなどの問題が発生することがわかりました。

QuickPicは、ユーザーをカメラ画面(ギャラリーアイコン付き)に移動しますが、その間、ユーザーをアプリから削除します。その時点で、ユーザーは基本的にAndroidのストックカメラアプリを使用しており、Quickpicアプリ自体は使用していません。

于 2012-01-24T18:23:14.423 に答える