안드로이드 개발 질문/답변
(글 수 45,052)
Camer Preview를 구현해 보고 있는데 카메라를 돌렸을때(눕히거나 세웠을때) 화면의 영상이 살짝 늘어나거나 줄어드는 현상이 생기는데...
아직 공부중인 초보라서 원인을 알수가 없네요 ^^;;
레퍼런스를 봐도 아직 이해 못하는부분이 더 많아서 머가 문제인지를 모르겠습니다.
고수님들 소스 보시고 빠진부분이 있거나 틀린부분이 있다면 지적좀 해주세요 ^^
아직 공부중인 초보라서 원인을 알수가 없네요 ^^;;
레퍼런스를 봐도 아직 이해 못하는부분이 더 많아서 머가 문제인지를 모르겠습니다.
고수님들 소스 보시고 빠진부분이 있거나 틀린부분이 있다면 지적좀 해주세요 ^^
package com.triples;
import java.io.*;
import java.util.*;
import com.triples.R.layout;
import android.app.*;
import android.content.*;
import android.graphics.*;
import android.hardware.*;
import android.hardware.Camera;
import android.hardware.Camera.Size;
import android.media.*;
import android.os.*;
import android.util.*;
import android.view.*;
import android.view.ViewGroup.LayoutParams;
import android.view.View.*;
import android.widget.*;
public class av_blog extends triples_base implements SurfaceHolder.Callback {
Camera camera;
Camera.Parameters param;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.av_blog);
displaySet () ;
}
private void displaySet () {
SurfaceView surface = (SurfaceView)findViewById(R.id.temp);
SurfaceHolder holder = surface.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
holder.setSizeFromLayout();
}
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
param = camera.getParameters();
camera.setParameters(param);
camera.startPreview();
Log.d("Camera Change MSG", "" + format + " >> " + width + " >> " + height);
}
public void surfaceCreated(SurfaceHolder holder) {
try {
camera = Camera.open();
camera.setPreviewDisplay(holder);
camera.setDisplayOrientation(90);
camera.startPreview();
} catch (IOException e) {
}
}
public void surfaceDestroyed(SurfaceHolder holder) {
if ( camera != null ) {
camera.stopPreview();
camera.release();
camera = null;
}
}
}


