Continuamos con este Curso Gratis para crear Apps con WatchKit.
En esta ocasión vamos a ver una clase importante, pues es la encargada de mostrar las imágenes de nuestras aplicaciones.
¿Estás preparado? Pues vamos a conocer WKInterfaceImage.
WKInterfaceImage
Esta clase nos va a permitir incluir imágenes en nuestras vistas, además podemos realizar secuencias de imágenes animadas.
Como viene siendo habitual con el Framework WatchKit, no podemos crear instancias de esta clase, en su lugar, pondremos las imágenes en nuestro controlador de vista en Interface Builder, y posteriormente conectaremos estas imágenes a nuestro código.
Algo como esto:
@IBOutlet weak var miImagen WKInterfaceImage
Formatos de imagen soportados
Podemos usar cualquier imagen compatible con iOS, si quieres saber que tipo de imágenes son soportadas haz clic aquí.
Apple recomienda usar imágenes en formato JPEG o bien PNG, ya que este tipo de imágenes renderizan mejor, por lo que nuestra aplicación tendrá un mejor rendimiento si usamos estos formatos.
Por otra parte, es imprescindible que nuestras imágenes tengan la cadena @2x en el nombre de archivo, esto es para indicar que son imágenes compatibles con pantalla retina.
Así mismo, si la imagen que ponemos es demasiado grande, WatchKit cambiará su tamaño, adaptándolo y cambiando la relación de aspecto para que quepa en la ubicación seleccionada.
Dentro de nuestro Storyboard, en el Inspector de atributos, podremos configurar lo siguiente:
- Image: El nombre de la imagen a mostrar.
- Mode: El modo de cómo se muestra el contenido.
- Tint: El color aplicado a la plantilla de imagen.
- Animate: Booleano que indica si la imagen se va a animar.
La clase tiene algunos métodos interesantes, vamos a verlos.
Métodos para configurar la imagen
func setImage(_ image: UIImage?)
Nos va a permitir establecer una imagen, o cambiar la imagen que se esté visualizando.
func setImageData(_ imageData: NSData?)
Nos permite crear o cambiar una imagen a partir de un objeto de la clase NSData.
Un objeto de la clase NSData es un objeto de tipo de datos de mapa de bits, que contiene la imagen original con un cifrado en bits.
func setImageNamed(_ imageName: String?)
Con este método vamos a poder establecer una imagen llamándola por su nombre.
WatchKit buscará el nombre dado en nuestro proyecto, primero buscará la imagen en el paquete de la aplicación, también buscará la imagen en la memoria caché del dispositivo.
func setTintColor(_ tintColor: UIColor?)
Cambia el color del tinte de la plantilla de la imagen.
Métodos para crear secuencias de imágenes o imágenes animadas
func startAnimating()
Si el objeto de la clase imagen contiene varías imágenes, este método hace que comience la animación de las mismas.
Si sólo tiene una imagen este método no hace nada.
func startAnimatingWithImagesInRange(_ imageRange: NSRange, duration duration: NSTimeInterval, repeatCount repeatCount: Int)
Método que permite configurar la animación de las imágenes, estableciendo un rango de imágenes, una duración, y si se repite la secuencia o no.
func stopAnimating()
Su propio nombre lo indica, con este método pararemos la animación.
Pues esto es todo, como ves una clase muy sencilla pero a la vez muy potente, pues además de permitirnos incluir imágenes en nuestras pantallas, vamos a poder crear animaciones de estas.
Recuerda que estamos viendo el Framework de WatchKit en profundidad, para conocer las herramientas que tenemos disponibles para crear Apps para el Apple Watch, cuándo terminemos de ver todos los objetos, nos pondremos con la práctica, y crearemos algunos ejemplos prácticos 😉
Si tienes alguna duda, déjame un comentario.
Nos vemos en la próxima clase.