1 00:00:02,310 --> 00:00:09,000 Entonces, comencemos con la configuración de esto. Aquí, iniciar cámara asíncrona es la función que llamamos 2 00:00:09,570 --> 00:00:13,310 para abrir la cámara, pero en realidad allí, puede configurar bastante. 3 00:00:13,340 --> 00:00:19,920 Si pasa un objeto aquí, tiene un par de opciones que puede configurar y, por supuesto, los documentos de exposición oficiales para el 4 00:00:19,920 --> 00:00:24,520 selector de imágenes son el lugar al que debe ir para aprender todo sobre estas opciones. 5 00:00:24,600 --> 00:00:26,930 Ahora, la configuración predeterminada en realidad está 6 00:00:26,940 --> 00:00:32,940 bastante bien, pero por ejemplo aquí, podría agregar permisos de edición y establecerlo en verdadero para obtener un editor básico 7 00:00:32,940 --> 00:00:37,560 que le permita recortar la imagen, por ejemplo, y eso es realmente algo que habilitaré aquí. 8 00:00:37,620 --> 00:00:44,040 También puede establecer una relación de aspecto específica donde desee iniciar sesión, como 16: 9, que se tendrá 9 00:00:44,040 --> 00:00:46,850 en cuenta en su modo de edición. 10 00:00:46,890 --> 00:00:52,680 También puede establecer si desea una cadena base64 en lugar de un archivo o además del archivo, debería decir, lo que significa que 11 00:00:52,920 --> 00:00:57,570 obtiene una cadena de texto que representa su imagen, que es bastante grande y no lo haré aquí 12 00:00:57,570 --> 00:01:04,740 y también puedes controlar la calidad y allí, estableceré la calidad en 0. 13 00:01:04,740 --> 00:01:09,780 5, este debería ser un valor entre 0 y 1, donde uno es el valor más alto posible y, por 14 00:01:09,870 --> 00:01:13,350 supuesto, esto también afecta el tamaño de la imagen a partir de entonces. 15 00:01:13,380 --> 00:01:17,030 Por lo tanto, desea elegir un tamaño o una calidad que tenga sentido para su aplicación. 16 00:01:17,040 --> 00:01:23,490 Si solo usa la imagen como una miniatura, es posible que no necesite imágenes de súper alta resolución. Con eso, esto está configurado y la pregunta, 17 00:01:23,490 --> 00:01:28,050 por supuesto, es ¿cómo tenemos acceso a la imagen que se tomó? 18 00:01:28,950 --> 00:01:32,520 Bueno, recuerda que esto es una promesa o que esto devuelve una promesa. 19 00:01:32,550 --> 00:01:33,570 Bueno, por 20 00:01:33,600 --> 00:01:41,050 supuesto, por lo tanto, podemos esperar esa promesa y el resultado que volvemos después de que se resuelva la promesa es la imagen, 21 00:01:41,130 --> 00:01:47,340 por lo que podemos almacenar esta imagen de forma constante. Una imagen ahora es un objeto con varios datos sobre la 22 00:01:47,340 --> 00:01:48,840 imagen que se tomó. 23 00:01:49,590 --> 00:01:53,230 Entonces, aquí, podemos consolar la imagen de registro para ver qué hay allí. 24 00:01:53,250 --> 00:01:58,150 Guardemos esto y probémoslo en Android. Allí, si ahora voy a 25 00:01:58,160 --> 00:02:05,930 esta nueva pantalla aquí, tomo una imagen y tomo esta imagen con esta cámara simulada simulada. Llego aquí y 26 00:02:05,960 --> 00:02:06,460 confirmo 27 00:02:06,470 --> 00:02:09,170 esto, ahora voy a este recorte 28 00:02:09,200 --> 00:02:16,760 o a esta herramienta de edición porque habilité la edición, aquí yo tengo este formato 16: 9 que puedo 29 00:02:16,880 --> 00:02:22,050 mover y al hacer clic en recortar, ahora puedo seleccionar esto y si 30 00:02:22,250 --> 00:02:27,280 ahora miramos la consola, vemos que este es el objeto que recuperamos. 31 00:02:27,440 --> 00:02:32,930 Es un objeto con un campo cancelado que nos dice que esto no se canceló pero que tomamos una imagen, por lo 32 00:02:32,930 --> 00:02:33,470 que 33 00:02:33,470 --> 00:02:37,880 este es un campo que podemos verificar para averiguar si el usuario tomó una imagen o si 34 00:02:37,880 --> 00:02:38,700 el proceso se canceló. 35 00:02:39,290 --> 00:02:41,330 Obtenemos la altura de la 36 00:02:41,570 --> 00:02:49,310 imagen y el ancho, obtenemos el tipo que es la imagen y el URI, por lo que un enlace al archivo de imagen. 37 00:02:49,310 --> 00:02:53,570 Ahora esto se encuentra en un directorio temporal que se limpia automáticamente periódicamente, 38 00:02:53,630 --> 00:02:59,830 por lo que no es el almacenamiento o la ruta donde desea almacenarlo permanentemente y lo trasladaremos más tarde 39 00:02:59,840 --> 00:03:04,010 con la API del sistema de archivos, pero por ahora, esto es 40 00:03:04,670 --> 00:03:06,740 algo que puede trabajar con 41 00:03:06,770 --> 00:03:16,840 Entonces, para generar una vista previa, podemos administrar algún estado aquí en el selector de imágenes importando el estado de uso y 42 00:03:16,870 --> 00:03:24,150 luego inicializarlo allí, se puede llamar al estado de uso aquí y, por supuesto, recupero 43 00:03:24,510 --> 00:03:33,840 algunos datos aquí y esa es mi imagen elegida y un establezca la función de imagen seleccionada como está acostumbrado 44 00:03:33,870 --> 00:03:36,740 desde el estado de uso y 45 00:03:36,810 --> 00:03:39,160 ahora podemos utilizarla aquí. 46 00:03:39,240 --> 00:03:44,340 Aquí quiero establecer la imagen elegida en imagen. uri, entonces ese enlace a mi imagen, 47 00:03:44,360 --> 00:03:46,550 de modo que esa ruta 48 00:03:46,590 --> 00:03:53,910 como una cadena a mi imagen y lo bueno es que esta ruta se puede usar con el componente de 49 00:03:53,940 --> 00:03:57,830 imagen, funciona con el componente de imagen sin ninguna configuración especial. 50 00:03:57,840 --> 00:04:02,160 Entonces, allí podemos agregar fuente y ahora tenemos que configurar esto 51 00:04:02,160 --> 00:04:08,800 en un objeto con esta propiedad URI. Hasta ahora en el curso, usamos eso para apuntar a imágenes de 52 00:04:08,820 --> 00:04:11,130 red, bueno, también puede apuntar a imágenes 53 00:04:11,130 --> 00:04:13,770 locales, así que aquí podemos apuntar a la imagen elegida. 54 00:04:13,980 --> 00:04:18,700 Por supuesto, esto solo funciona si tenemos una imagen seleccionada, que es el caso después de usar 55 00:04:19,140 --> 00:04:23,940 la cámara, por lo que ahora podemos agregar una marca if aquí o una expresión ternaria simple 56 00:04:24,590 --> 00:04:31,770 donde verificamos si la imagen seleccionada está configurada y si no está configurada, de ahí el signo de exclamación, muestro este texto alternativo, de lo contrario 57 00:04:31,890 --> 00:04:38,820 con los dos puntos aquí, configuré la imagen y ahora tenemos esta salida condicional y, por lo tanto, ahora si guardamos eso y esto se 58 00:04:38,820 --> 00:04:42,640 reinicia en ambos dispositivos, en ambos simuladores, si voy para Android y tomo mi 59 00:04:42,660 --> 00:04:50,290 imagen aquí, por supuesto, esta cámara se abre como era de esperar. Podemos confirmar esto, elegir nuestra imagen, recortarla y 60 00:04:50,290 --> 00:04:51,490 ahora la 61 00:04:51,490 --> 00:04:56,230 vemos aquí en la vista previa, así que esa es 62 00:04:56,230 --> 00:04:59,700 nuestra imagen que se está acostumbrando. 63 00:04:59,890 --> 00:05:05,310 Y con eso, por supuesto, es hora de agregarlo al lugar que podemos agregar haciendo clic en el botón Guardar lugar y es 64 00:05:05,650 --> 00:05:08,350 hora de agregar algo de espacio entre estos dos botones, supongo.