Android 台灣中文網

標題: Activity中調用外部相機,拍照後失焦 [打印本頁]

作者: mg0825    時間: 2014-10-8 12:23
標題: Activity中調用外部相機,拍照後失焦
本帖最後由 mg0825 於 2014-10-8 12:24 編輯

  1. private static final int CAMERA_REQUEST = 1888;

  2. public void onClick_Camera(View view) {
  3.     Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
  4.     startActivityForResult(cameraIntent, CAMERA_REQUEST);
  5. }

  6. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  7.     if (requestCode == CAMERA_REQUEST) {
  8.         if (resultCode == Activity.RESULT_OK) {
  9.             Bitmap photo = (Bitmap) data.getExtras().get("data");

  10.             ImageView image = (ImageView) this.findViewById(R.id.imageView1);
  11.             image.setImageBitmap(photo);
  12.         }
  13.     }
  14. }
複製代碼

我如上述code調用內建相機進行照相

預覽時都正常

                               
登錄/註冊後可看大圖

但是拍照下去後便失焦了(點選圖片才看得清楚失焦)

                               
登錄/註冊後可看大圖

我單獨使用內建相機進行拍照出來的圖片都正常

                               
登錄/註冊後可看大圖


我是少了什麼code才導致拍攝的照片失焦嗎?
作者: messengerses    時間: 2014-10-12 20:04
印象中直接透過傳回的Intent取得的Bitmap是縮圖的樣子,要取得原圖的話要在startActivity前就先在Intent內加入以下程式:

intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); // uri為File的uri

這樣在startActivity後,拍完照,才會將原圖存在uri所指的位置
作者: mg0825    時間: 2014-11-9 19:48
messengerses 發表於 2014-10-12 20:04
印象中直接透過傳回的Intent取得的Bitmap是縮圖的樣子,要取得原圖的話要在startActivity前就先在Intent內 ...

很抱歉過了一個月才回應
還是謝謝你的回答,目前我透過你的方法取得的照片確實為原圖
不過預覽畫面還是有失焦(縮圖?)的情況
不知道是否有其他高人有遇過這種情況?
我測試的設備為Nexus 7 二代 android 4.4




歡迎光臨 Android 台灣中文網 (https://apk.tw/) Powered by Discuz! X3.1