안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요. 안드로이드 카메라 관련 궁금한게 있어서 질문드립니다.
우선 아래 소스를 이용해서 화면 전체에 카메라 프리뷰를 보일려고 합니다.
// Hide the window title.
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
에뮬에서는 잘되는데, 실제 단말기(갤럭시 A)에서는 그림과 같이 빨간 색 부분에서만 프리뷰가 보입니다.
더 확장 할 수 있는 방법은 어떤 건가요? 아래 버튼 부분를 제외한 모든 화면을 꽉 차게 하고 싶습니다.
버튼과 프리뷰 사이의 여백도 없이요.
아래와 같은 식으로 크기를 전달합니다.
public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
// Now that the size is known, set up the camera parameters and begin
// the preview.
Camera.Parameters parameters = camera.getParameters();
List<Size> sizes = parameters.getSupportedPreviewSizes();
Size optimalSize = getOptimalPreviewSize(sizes, w, h);
parameters.setPreviewSize(optimalSize.width, optimalSize.height);
//parameters.setPreviewSize(320, 436);
Log.d("", optimalSize.width + " * " + optimalSize.height);
camera.setParameters(parameters);
camera.startPreview();
}
또 한가지 궁금한게, 세번째 사진은 아래 소스처럼 프리뷰에 setBackgroundResource 지정한 것입니다.
preview.setBackgroundResource(R.drawable.gf030gl);
하고 싶은게 카메라 위에 투명한 버튼 같은 걸 올리려고 하는데, 위에처럼 해도 되더라고요.
View를 이용하라고 하는데, 레이아웃을 어떻게 설정해야 하는지 잘 모르겠네요.
자세히 알려주시면 감사하겠습니다. 그리고 저렇게 Background를 지정해서 하는 거랑 어떻게 다른지 설명해주세요.
이미지는 카메라 프리뷰 사이즈 정도 합니다.