カメラのプレビューを試しています
これは私のコードであり、エラーはスローされませんが、画面はまだ黒です。何か案は?
this.setContentView(R.layout.camerapreview);
SurfaceView cameraSurface = (SurfaceView)findViewById(R.id.cpPreview);
SurfaceHolder holder = cameraSurface.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_Push_BUFFERS);
this.camera = Camera.open();
this.camera.setPreviewDisplay(holder);
this.camera.startPreview();
camerapreview.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content">
<SurfaceView
Android:id="@+id/cpPreview"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_gravity="center">
</SurfaceView>
</LinearLayout>
最後の3行を呼び出すのが早すぎます。 setPreviewDisplay()
を呼び出す前に、サーフェスが準備されるのを待つ必要があります。また、surfaceChanged()
を呼び出す前に、サーフェスのサイズが変更されるのを待つ必要があります(startPreview()
)。 このプロジェクト 必要なものがあります。