안드로이드 개발 질문/답변
(글 수 45,052)
요 밑에서 카메라 프리뷰하는 간단한 프로그램을 짜서 제 폰(디자이어, v2.1)에 올려서 구동을 시켜봤더니 화면에 아무것도 뜨질 않기에 질문 올렸었습니다.
(http://www.androidpub.com/?document_srl=409378&mid=android_dev_qna&comment_srl=409981&rnd=410744#comment_410744)
이게 카메라 역할을 하는 객첸데요. 저기 주석 처리된 부분( //parameters.setPreviewSize(width, height); ) 덕분에
동작이 잘 되었습니다.
여기서 질문 ^^;
1. 왜 저 부분 때문에 동작이 안된건지 알려주실분 없나요?
2. 디자이어를 수평으로 돌리면 화면이 가로로 전환되잖아요? 제 생각에는 그런 기능을 어플에 추가 하지 않으면 아무 반응이
없어야 정상인데, 폰을 수평으로 돌리면 어플이 죽어버립니다. 기본적으로 이런 화면전환(표현이 이게 맞나요?)을 막거나 아니면
지원해야합니까?
(http://www.androidpub.com/?document_srl=409378&mid=android_dev_qna&comment_srl=409981&rnd=410744#comment_410744)
package kr.mobileplace.lecture;
import android.content.Context;
import android.util.AttributeSet;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.hardware.Camera;
public class CameraView extends SurfaceView implements SurfaceHolder.Callback {
private SurfaceHolder holder;
private Camera camera = null;
public CameraView(Context context) {
super(context);
this.holder = getHolder();
this.holder.addCallback(this);
this.holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
}
public CameraView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public CameraView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public void surfaceCreated(SurfaceHolder holder) {
this.camera = Camera.open();
try {
this.camera.setPreviewDisplay(this.holder);
} catch (Exception e) {
// TODO: handle exception
}
}
public void surfaceChanged(SurfaceHolder holder, int format,
int width, int height) {
Camera.Parameters parameters = this.camera.getParameters();
//parameters.setPreviewSize(width, height);
this.camera.setParameters(parameters);
this.camera.startPreview();
}
public void surfaceDestroyed(SurfaceHolder holder) {
this.camera.stopPreview();
this.camera = null;
}
}
이게 카메라 역할을 하는 객첸데요. 저기 주석 처리된 부분( //parameters.setPreviewSize(width, height); ) 덕분에
동작이 잘 되었습니다.
여기서 질문 ^^;
1. 왜 저 부분 때문에 동작이 안된건지 알려주실분 없나요?
2. 디자이어를 수평으로 돌리면 화면이 가로로 전환되잖아요? 제 생각에는 그런 기능을 어플에 추가 하지 않으면 아무 반응이
없어야 정상인데, 폰을 수평으로 돌리면 어플이 죽어버립니다. 기본적으로 이런 화면전환(표현이 이게 맞나요?)을 막거나 아니면
지원해야합니까?



