1 00:00:02,310 --> 00:00:09,000 Quindi iniziamo con la configurazione di questo. Qui, avviare la fotocamera asincrona è la funzione che chiamiamo per 2 00:00:09,570 --> 00:00:13,310 aprire la fotocamera ma in realtà lì, è possibile configurare un bel po '. 3 00:00:13,340 --> 00:00:19,920 Se passi un oggetto qui, hai un paio di opzioni che puoi impostare e, naturalmente, i documenti ufficiali dell'esposizione per il 4 00:00:19,920 --> 00:00:24,520 selettore di immagini sono il posto dove andare per imparare tutto su queste opzioni. 5 00:00:24,600 --> 00:00:26,930 Ora le impostazioni predefinite in realtà sono 6 00:00:26,940 --> 00:00:32,940 abbastanza buone, ma ad esempio qui, è possibile aggiungere consente la modifica e impostarlo su true per ottenere un editor 7 00:00:32,940 --> 00:00:37,560 di base che consente di ritagliare l'immagine, ad esempio, ed è effettivamente qualcosa che abiliterò qui. 8 00:00:37,620 --> 00:00:44,040 È inoltre possibile impostare un formato specifico in cui si desidera accedere, ad esempio 16: 9, che verrà 9 00:00:44,040 --> 00:00:46,850 preso in considerazione nella modalità di modifica. 10 00:00:46,890 --> 00:00:52,680 Puoi anche impostare se vuoi una stringa base64 invece di un file o in aggiunta al file dovrei dire, il che significa che 11 00:00:52,920 --> 00:00:57,570 ottieni una stringa di testo che rappresenta la tua immagine, che è abbastanza grande e non lo farò qui 12 00:00:57,570 --> 00:01:04,740 e puoi anche controllare la qualità e lì, imposterò la qualità su 0. 13 00:01:04,740 --> 00:01:09,780 5, questo dovrebbe essere un valore compreso tra 0 e 1, dove uno è il valore più alto 14 00:01:09,870 --> 00:01:13,350 possibile e, naturalmente, ciò influisce anche sulla dimensione dell'immagine in seguito. 15 00:01:13,380 --> 00:01:17,030 Quindi vuoi scegliere una dimensione o una qualità che abbia senso per la tua app. 16 00:01:17,040 --> 00:01:23,490 Se stai usando l'immagine solo come anteprima, potresti non aver bisogno di immagini ad altissima risoluzione. Con ciò, questo è configurato e la 17 00:01:23,490 --> 00:01:28,050 domanda ovviamente è: come possiamo accedere all'immagine che è stata scattata? 18 00:01:28,950 --> 00:01:32,520 Bene, ricorda che questa è una promessa o che restituisce una promessa. 19 00:01:32,550 --> 00:01:33,570 Bene, naturalmente, 20 00:01:33,600 --> 00:01:41,050 quindi possiamo attendere quella promessa e il risultato che otteniamo dopo che la promessa si è risolta davvero è l'immagine, 21 00:01:41,130 --> 00:01:47,340 quindi possiamo semplicemente memorizzare questa immagine in una costante. Un'immagine è ora un oggetto con varie informazioni sull'immagine 22 00:01:47,340 --> 00:01:48,840 che è stata presa. 23 00:01:49,590 --> 00:01:53,230 Quindi qui, possiamo consolare l'immagine del registro per vedere cosa c'è dentro. 24 00:01:53,250 --> 00:01:58,150 Salviamo questo e testiamolo su Android. Lì se ora vado a 25 00:01:58,160 --> 00:02:05,930 questa nuova schermata qui, prendo un'immagine e prendo questa immagine con questa finta fotocamera simulatore, arrivo qui e confermo 26 00:02:05,960 --> 00:02:06,460 questo, 27 00:02:06,470 --> 00:02:09,170 ora vado a questo ritaglio o a 28 00:02:09,200 --> 00:02:16,760 questo strumento di modifica perché ho abilitato la modifica, qui ho ho questa cosa in formato 16: 9 che 29 00:02:16,880 --> 00:02:22,050 posso spostare e facendo clic sul ritaglio, ora posso selezionarlo e se ora 30 00:02:22,250 --> 00:02:27,280 diamo un'occhiata alla console, vediamo che questo è l'oggetto che abbiamo ottenuto. 31 00:02:27,440 --> 00:02:32,930 È un oggetto con un campo annullato che ci dice che questo non è stato cancellato ma che abbiamo preso un'immagine, 32 00:02:32,930 --> 00:02:33,470 quindi 33 00:02:33,470 --> 00:02:37,880 questo è un campo che possiamo controllare per scoprire se l'utente ha fatto un'immagine o se il 34 00:02:37,880 --> 00:02:38,700 processo è stato annullato. 35 00:02:39,290 --> 00:02:41,330 Otteniamo l'altezza dell'immagine e 36 00:02:41,570 --> 00:02:49,310 la larghezza, otteniamo il tipo di immagine e URI, quindi un collegamento al file di immagine. 37 00:02:49,310 --> 00:02:53,570 Ora questo è in una directory temporanea che viene ripulita automaticamente periodicamente, quindi 38 00:02:53,630 --> 00:02:59,830 ovviamente non è la memoria o il percorso in cui si desidera archiviarlo in modo permanente e lo 39 00:02:59,840 --> 00:03:04,010 sposteremo in seguito con l'API del filesystem ma per ora, questo è 40 00:03:04,670 --> 00:03:06,740 qualcosa che posso lavorare con. 41 00:03:06,770 --> 00:03:16,840 Quindi, per generare un'anteprima, possiamo gestire alcuni stati qui nel selettore di immagini importando lo stato d'uso e quindi 42 00:03:16,870 --> 00:03:24,150 inizializzandoli lì, lo stato d'uso può essere chiamato qui e, naturalmente, ottengo alcuni 43 00:03:24,510 --> 00:03:33,840 dati qui e questa è la mia immagine selezionata e un imposta la funzione immagine selezionata come al 44 00:03:33,870 --> 00:03:36,740 solito dallo stato d'uso e 45 00:03:36,810 --> 00:03:39,160 ora possiamo utilizzarla qui. 46 00:03:39,240 --> 00:03:44,340 Qui voglio impostare l'immagine selezionata su immagine. così, quindi per quel link alla mia 47 00:03:44,360 --> 00:03:46,550 immagine, così quel percorso come 48 00:03:46,590 --> 00:03:53,910 una stringa per la mia immagine e la cosa bella è che questo percorso può essere usato con il componente 49 00:03:53,940 --> 00:03:57,830 immagine, funziona con il componente immagine senza alcuna configurazione speciale. 50 00:03:57,840 --> 00:04:02,160 Quindi, possiamo aggiungere sorgente e ora dobbiamo impostarlo su 51 00:04:02,160 --> 00:04:08,800 un oggetto con questa proprietà URI. Finora nel corso, usiamo quello per indicare le immagini di 52 00:04:08,820 --> 00:04:11,130 rete, bene puoi anche puntare su 53 00:04:11,130 --> 00:04:13,770 immagini locali, quindi qui possiamo puntare sull'immagine raccolta. 54 00:04:13,980 --> 00:04:18,700 Naturalmente questo funziona solo se abbiamo un'immagine selezionata che è il caso solo dopo aver usato 55 00:04:19,140 --> 00:04:23,940 la fotocamera, quindi ora possiamo aggiungere un controllo if qui o una semplice espressione ternaria in 56 00:04:24,590 --> 00:04:31,770 cui controlliamo se l'immagine selezionata è impostata e se non è impostata, da qui il punto esclamativo, mostro questo testo di fallback, altrimenti con i 57 00:04:31,890 --> 00:04:38,820 due punti qui, ho impostato l'immagine e ora abbiamo questo output condizionale e quindi ora se lo salviamo e questo quindi si riavvia su 58 00:04:38,820 --> 00:04:42,640 entrambi i dispositivi, su entrambi i simulatori, se vado su Android e prendo 59 00:04:42,660 --> 00:04:50,290 la mia immagine qui, ovviamente questa fotocamera si apre senza sorprese. Possiamo confermarlo, scegliere la nostra immagine, ritagliarla 60 00:04:50,290 --> 00:04:51,490 e 61 00:04:51,490 --> 00:04:56,230 ora la vediamo qui nell'anteprima, quindi questa è la 62 00:04:56,230 --> 00:04:59,700 nostra immagine che si sta abituando. 63 00:04:59,890 --> 00:05:05,310 E con ciò, è ovviamente tempo di aggiungerlo al luogo che possiamo aggiungere facendo clic sul pulsante Salva luogo ed è tempo di 64 00:05:05,650 --> 00:05:08,350 aggiungere un po 'di spazio tra questi due pulsanti, immagino.