[MÚSICA] [MÚSICA] Iniciemos la aplicación creando propiamente el proyecto, y dentro de ese proyecto vamos a definir lo que sería nuestra interfaz gráfica. Estos serían los primeros pasos de nuestra aplicación. Vamos a proceder con la creación de la aplicación. Para ello vamos a lanzar Xcode. Vamos a crear un nuevo proyecto de una sola vista, de cualquier manera vamos a borrar esa vista. Le voy a llamar imágenes. Y algo muy importante es que debemos seleccionar el uso de Core Data, ya que esta misma aplicación la vamos a utilizar para demostrar la persistencia de datos. Le damos siguiente, voy a crear un repositorio Git también, por si necesito regresar a algún punto dentro de la aplicación. Sale un mensaje de error, no pasa nada, después estableceré las credenciales adecuadas. En este momento, vamos a crear lo que es la interfaz gráfica. Vamos a borrar en realidad todo el controlador de vista, y lo vamos a reemplazar por nuestras propias clases. Entonces, lo primero que vamos a utilizar es el control de navegación y realmente lo que vamos a utilizar de ese control de navegación es el área que tenemos arriba, y que no está sujeta al ascenso y descenso de toda la interfaz gráfica. Entonces, sabemos que su amiga favorita de este control de navegación es la vista tabla, la cual vamos a eliminar. Vamos a buscar ahora entonces la parte del controlador de la colección de vista, lo arrastramos. Y vamos a conectar el control de navegación junto con el control de vista diciéndole que es su controlador raíz. Entonces le damos control clic, lo arrastramos, lo soltamos y le vamos a decir que es el controlador raíz del controlador de navegación. Ahora necesitamos decirle que el controlador inicial es el de navegación, para que nuestra aplicación se ejecute de manera adecuada. Nos vamos a las propiedades, y vamos a decirle que es nuestro controlador de vista inicial de la aplicación, vemos la flecha que indica que precisamente se trata del controlador inicial de toda la aplicación. Ahí va a comenzar nuestra aplicación. En este momento vamos a crear la clase que nos permita codificar o especificar la parte del control de la colección de vistas, y vamos a crear una nueva clase, subclase de la general. Entonces creamos una nueva clase, que debe ser una subclase de User Interface Collection View Controller, es decir de la general, y le vamos a poner como nombre CVC. Ahí vamos a desarrollar toda la aplicación propiamente de todo el código, todo va a depender de esa clase. Le damos next y lo guardamos propiamente en la aplicación. Ya hemos creado una serie de métodos debido a que elegimos que era una subclase, y nos va a simplificar la vida al momento de hacer la programación. Entonces, ya tenemos diferentes métodos que vimos en la presentación de lo que sería la colección de vistas. Vamos directamente otra vez al storyboard y vamos a preparar que la clase en específico del controlador de vista es la que acabamos de crear. Vamos al inspector de identidad y le vamos a decir que la clase en realidad no es la general, sino nuestra CVC. Tenemos un warning debido a que la celda, si se acordaran debería ser reutilizable y debería tener un identificador, y no lo tiene. Entonces vamos a establecer el mismo identificador que nos está sugiriendo esta clase que acabamos de crear, por ejemplo el identificador en este caso es Cell, y vamos a utilizar el mismo, podríamos utilizar otro pero deberíamos ser consistentes tanto dentro de este archivo como dentro de lo que sería el storyboard, es decir la creación de la interfaz gráfica. Entonces seleccionamos la celda, y le vamos a decir que el propiamente, el identificador es Cell a través de inspector de atributos. Entonces normalmente, una vez que ya está establecido el identificador, desaparece el warning, la precaución. También en la vista de colección le vamos a decir que el background, para que no esté en negro lo vamos a poner en blanco. Blanco, entonces ahí tenemos el background. Y vamos a seleccionar blanco. Blanco. Adicionalmente, tenemos el área de la navegación que simplemente la estamos utilizando para que en el momento de ascender o descender la barra, pues no se modifique la posición de esa área debido al control de navegación, y lo que vamos a poner es el Text Field que nos va a servir para recibir el tópico que el usuario quiera buscar en internet y de ahí las imágenes correspondientes. También vamos a ajustar para que sea más fácil nuestra aplicación que vamos a utilizar un dispositivo iPhone. [AUDIO EN BLANCO] Y después vamos a hacer el enlace entre nuestro campo de texto y el controlador de la colección de vistas. Entonces, vamos a sacar al asistente, voy a dar control clic y lo voy a arrastrar y voy a crear una acción y directamente le voy a llamar buscar, que el usuario cuando presione el botón enter dentro del teclado, va a llamar. Y le vamos a hacer la acción que sea Did End On Exit para que nos llame al final de que apriete enter dentro del teclado del dispositivo móvil. Entonces ya tenemos buena parte de nuestra interfaz gráfica. Regresamos al editor normal, nos vamos a lo creado dentro de la clase que habíamos añadido a nuestro proyecto, y ahorita simplemente voy a probar que todo va bien y que el texto que está utilizando el usuario sea el mismo que estamos recibiendo. No tenemos ningún tipo de warning, ningún tipo de precaución, abrimos la consola para ver la ejecución. Sale el simulador. Es un iPhone 6s Plus. Está trabajando, trabajando, nos vamos a la barra de navegación, especificamos algo, por ejemplo sombrero. Le damos enter, y finalmente dentro de la consola aparece sombrero, entonces ya logramos configurar parte de lo que sería nuestra aplicación en lo que es la interfaz gráfica. Ya creamos el proyecto, la interfaz gráfica. Faltan algunas piezas que las vamos a continuar en los siguientes videos. [MÚSICA]