2013年6月30日日曜日

カメラプレビューの縦横比を整える

カメラのプレビューサイズを合わせるには、
サーフェイスビューのサイズを変更する必要があります。
以下の例ではビューのサイズを、幅が狭い辺に合わせなるべく画面全体にビューのサイズを合わせています。

public void surfaceChanged0(SurfaceHolder holder, int format, int width,
int height) {
float scale = 1f;

if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {// 縦表示なら
scale = (float) width / (float) previewHeight;
layoutParams.height = (int) (previewWidth * scale);
layoutParams.width = (int) (previewHeight * scale);
} else { // 横なら
scale = (float) height / (float) previewHeight;
layoutParams.height = (int) (previewHeight * scale);
layoutParams.width = (int) (previewWidth * scale);
}

this.setLayoutParams(layoutParams);
}

カメラにもよりますがホームキー側に空きができると思います。

0 件のコメント:

コメントを投稿