android Camera 旋轉 90 °問題

public class DefaultActivity extends Activity {

MySurfaceView surface = null;
public Camera camera;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

surface = new MySurfaceView(this);

// 這個很重要
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
setContentView(surface);
}

/**
* Surface View
*/
class MySurfaceView extends SurfaceView implements SurfaceHolder.Callback {

private SurfaceHolder holder;

public MySurfaceView(Context context) {
super(context);

holder = getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
}

public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
Camera.Parameters parameters = camera.getParameters();
parameters.setPictureFormat(PixelFormat.JPEG);

camera.setParameters(parameters);
}

public void surfaceCreated(SurfaceHolder holder) {
try {
camera = Camera.open();
camera.setPreviewDisplay(holder);
camera.startPreview();


} catch (IOException e) {
e.printStackTrace();
}
}

public void surfaceDestroyed(SurfaceHolder holder) {

if (camera != null) {
camera.stopPreview();
camera.release();
camera = null;
}
}
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章