Question

Je souhaite créer une application de caméra qui dessine une image sur l'aperçu de la caméra.Lorsque l'appareil photo est en cours d'exécution, je souhaite ajouter un fichier image (exemple: image.png) sur l'aperçu de la caméra. Voici le code que je dois exécuter la caméra, mais je ne connais pas le code qui ajoute / dessine l'image.png

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
mImageCaptureUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(),
"IMG_" + String.valueOf(System.currentTimeMillis()) + ".jpg"));
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, mImageCaptureUri);

try {
    intent.putExtra("return-data", true);
    startActivityForResult(intent, PICK_FROM_CAMERA);
} catch (ActivityNotFoundException e) {
    e.printStackTrace();
}

Était-ce utile?

La solution

Vous ne pouvez pas superposer les éléments de la caméra, à moins que l'aperçu de la caméra ne se trouve dans votre application elle-même.L'utilisation de l'intention ne vous permettra pas de le faire.

L'une des réponses d'exemple de mon livre, Pro Android a augmenté la réalité, vous montre comment faire cela.Vous pouvez trouver le code source open source pour cette application ici.

Essentiellement, vous devez utiliser un superficiel pour afficher les données de l'appareil photo, puis utilisez un relativelayout ou Framelayout pour dessiner des choses sur le dessus.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top