Android - Photo Capture
-
28-09-2019 - |
Domanda
Nella mia domanda, devo implementare attività della fotocamera nativa dove devo lanciare la fotocamera e scattare foto.
In dettaglio, la mia domanda contenente, One TextView (in alto) per visualizzare il nome di attività e un pulsante (in basso) e in zona centrale dello schermo, fotocamera anteprima dovrebbe essere viewed..When utente fa clic su tale pulsante, fissaggi a scatto deve essere cliccato e visualizzarlo in ImageView di un'altra attività.
So che il seguente approccio viene utilizzato:
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE );
intent.putExtra( MediaStore.EXTRA_OUTPUT, outputFileUri );
startActivityForResult( intent, 0 );
Ma questo approccio se ho usato quindi non viene visualizzato il mio TextView e vista pulsante.
(Nota di Pls che: sto usando Android SDK 1.5 con HTC Hero)
pls mi aiutano per suggestione di qualsiasi articolo, sito o pdf.
Grazie, Paresh
Soluzione
Se si sta tentando di utilizzare la fotocamera nativa, una volta che la fotocamera nativa è denominato controllerà la visuale. Tuttavia, se si desidera implementare la vostra macchina fotografica, allora tale disposizione una sarebbe possibile. Alcuni esempi di buone si possono trovare qui:
-
http://www.brighthub.com/mobile /google-android/articles/43414.aspx
-
http://labs.makemachine.net/ 2010/03 / semplice-android-foto-capture /
- http://www.jondev.net/articles/Capturing,_Saving,_and_Displaying_an_Image_in_Android_ (1.5, _1.6, _2.0, _2.1, _2.2, _Sense_UI _-_ eroe)
Goodluck!
Altri suggerimenti
Tutte le istruzioni sono al JavaDoc di android.hardware.Camera a http : //developer.android.com/reference/android/hardware/Camera.html :
- ottenere un'istanza di Camera da open ().
- Get esistente (default) le impostazioni con getParameters ().
- Se necessario, modificare le Camera.Parameters restituiti oggetto e setParameters di chiamata (Camera.Parameters).
- Se lo si desidera, chiamata setDisplayOrientation (int).
- Importante: Passo un SurfaceHolder completamente inizializzata a setPreviewDisplay (SurfaceHolder). Senza una superficie, la fotocamera non sarà in grado di avviare l'anteprima.
- Importante: Chiamata startPreview () per avviare l'aggiornamento del piano di anteprima. Anteprima deve essere avviato prima di poter scattare una foto.
- Quando si desidera, chiamare takePicture (Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback, Camera.PictureCallback) per catturare una foto. Attendere che i callback di fornire i dati di immagine reale.
- Dopo aver scattato una foto, display di anteprima sarà fermato. Per scattare altre foto, chiamare startPreview () di nuovo prima.
- Chiamata stopPreview () per interrompere l'aggiornamento del piano di anteprima.
-
Importante: chiamata Release () per rilasciare la fotocamera per l'utilizzo da parte di altre applicazioni. Le domande devono rilasciare la fotocamera subito in onPause () (e ri-open () in onResume ()).
Il SurfaceHolder è ususally implementato utilizzando SurfaceView