2011-11-29 3 views
1

I Android 클래스 Camera로 내 앱에서 사진을 찍는 시스템을 구현했습니다. 모두 잘 실행되지만 사진을 찍은 후에는 사용자에게 미리보기를 보여주고 사진을 저장하거나 취소 할 수있는 선택권을 부여합니다. 내가 가진 문제는 미리보기입니다. 미리보기는 mCamera.startPreview(); 다음에 표시되며 mCamera.stopPreview();의 유무에 관계없이 몇 초 만에 표시됩니다. 일부 특정 이벤트가 발생할 때까지 표시 시간을 연장하거나 미리보기를 고정합니다.카메라 미리보기를 고정하는 방법

누군가 미리보기를 일정 시간 동안 유지하는 방법을 알고 있습니까?

감사합니다.

+0

[Android (카메라) - stopPreview()와 onPictureTaken()을 동기화하는 방법?] (http://stackoverflow.com/questions/10924038/android-camera-how-to-syncronize-stoppreview-with) -onpicturetaken) –

답변

1

촬영 한 이미지를 가져 와서 표시해야합니다.

+1

이 질문을 올렸을 때 나는 이런 식으로 사용하기 시작했다. 그러나 Camera 클래스가 모든 사진을 찍은 후에 미리보기를 제공하면 ImageView를 사용하는 이유는 무엇입니까? 그것이 내가이 질문을 게시 한 이유입니다. 한편 응답을 통해 카메라 미리보기를 사용할 수있는 방법을 발견했습니다. 이벤트 리스너 "onPictureTaken"에서 나는 카메라를 멈추고 미리보기가 화면에 그대로 있습니다. 사진을 다시 찍으려면 카메라를 다시 실행하기위한 "재시도"버튼을 넣기 만하면됩니다. 이 이벤트 버튼을 누르면 카메라가 다시 시작되고 카메라가 미리보기를 제거합니다. 사진을 찍고 저장하는 모든 행동은 힘들고 평범하게 진행됩니다. 감사합니다. . – damson

+0

camera.stopPreview() 메소드가 이미지를 정지시키지 않고 완전히 검은 색으로 만드는 장치 (Huawei U8650 android 2.3.3)가 있습니다. 이 문제가이 기기에서만 발생하는지 또는 일반적인 문제인지 알고 싶습니다. 다른 장치에서 내가 언급 한 접근법이 잘 작동합니다. – Miquel

+0

의견이 없습니다. 죄송합니다. – njzk2

0

사진을 찍으면 미리보기가 중지됩니다. 그러나 정지 된 미리보기가 반드시 실제로 찍은 사진과 일치하지는 않습니다. 이를 위해서는 그림을 가져 와서 ImageView 또는 비슷한 것을 통해 표시해야합니다. 프리뷰 때

http://developer.android.com/reference/android/hardware/Camera.html#takePicture(android.hardware.Camera.ShutterCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback, android.hardware.Camera.PictureCallback)

이 방법은 유효하다 (이후 startPreview()). 미리보기는 이미지가 촬영 된 후에 중단됩니다. 미리보기를 다시 시작하거나 사진을 더 찍으려면 발신자가 startPreview()를 다시 호출해야합니다. start()와 stop() 사이에서 호출하면 안됩니다. 이 메서드를 호출 한 후에 startPreview()를 호출하거나 JPEG 콜백에 이 반환 될 때까지 다른 사진을 찍어서는 안됩니다.

관련 문제