Hallo zusammen,
ich versuche momentan eine kreisförmige Kameravorschau zu realisieren. Eine viereckige Kameravorschau habe ich schon mit Hilfe einer SurfaceView hinbekommen, das schaut momentan so aus:
public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback
{
[...]
public CameraPreview(Context context, Camera camera, PreviewCallback previewCb, AutoFocusCallback autoFocusCb)
{
super(context);
[...]
bolder = getHolder();
bolder.addCallback(this);
}
public void surfaceCreated(SurfaceHolder holder)
{
// The Surface has been created, now tell the camera where to draw the preview.
try {
camera.setPreviewDisplay(holder);
} catch (IOException ioe) {
Log.d(Constants.LOG_TAG, "Error setting camera preview", ioe);
}
}
public void surfaceDestroyed(SurfaceHolder holder)
{
holder.removeCallback(this);
}
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height)
{
[...]
}
}
Ich habe jetzt allerdings keinen Anhaltspunkt wie ich die Vorschau kreisförmig hinbekomme.
Nach etwas googlen bin ich zwar auf ein paar Lösungen gestoßen die mit shapes arbeiten, allerdings funktioniert das bei mir nicht, da ich ein Hintergrundbild verwende das sichtbar sein soll. Ungefähr so:
nur dass der rote Hintergrund ein richtiges Bild ist. Hat sowas schonmal jemand gemacht und kann mir da ein paar Tips geben?