Bien, pues después de algunas semanas en las que estado bastante ocupado, volvemos a retomar este Curso gratis para crear Apps para el Apple Watch.
Si en la clase anterior vimos la clase que nos va a permitir trabajar con fechas WKIntefaceDate, en esta vamos a ver una clase muy importante, pues es la clase que nos va a permitir crear grupos de vistas.
WKInterfaceGroup
Imaginaos que queréis poner en vuestra vista una imagen, y debajo dos botones alineados y centrados exactamente igual entre ellos, entonces nuestra solución pasa por añadir un WKInterfaceGroup y dentro de este grupo dos botones.
Debemos ver esta clase como si fuera una vista UIView en UIKit, una vista vacía, o SuperView dónde añadiremos otras vistas para poder establecer relaciones de posición o alineamiento entre ellas.
La documentación oficial de Apple dice que un WKInterfaceGroup es un contenedor para uno o más objetos de interfaz.
Al igual que sucede con otras clases del Framework, no debemos crear instancias de esta clase, en su lugar añadiremos el objeto a nuestro Storyboard y luego conectaremos un Outlet.
Podemos conectarlo de esta manera:
@IBOutlet weak var miGrupo: WKInterfaceGroup!
Dentro de nuestro Storyboard, en el Inspector de atributos, podremos configurar lo siguiente:
- Layout: Para organizar los elementos del grupo en horizontal o vertical.
- Insets: La cantidad de espacio ( en puntos ) que hay entre el borde el grupo y su contenedor principal, es decir la vista dónde se incluye.
- Spacing: Espacio entre los elementos del grupo ( en puntos ).
- Background: Para establecer la imagen de fondo del grupo. Existen algunos métodos para modificar este atributo en tiempo de ejecución, los veremos un poco más tarde.
- Mode: Para escalar o no la imagen de fondo.
- Animate: Se trata de un valor booleano para indicar si la imagen de fondo es animada. También debemos indicar la duración en segundos, así como si la imagen comienza a animarse cuándo cuándo la vista aparece en pantalla.
- Color: El color de fondo para el grupo. Existe un método para hacer esto en tiempo de ejecución.
- Radius: Para establecer un borde redondeado en el rectángulo del grupo. Si no se especifica nada, por defecto se aplica un radio de 6 puntos.
Como hemos comentado, existen algunos métodos que debemos conocer, son los siguientes.
Configurar la apariencia del grupo
func setBackgroundColor(_
color
: UIColor?)Para configurar el color de fondo del grupo.
func setBackgroundImage(_
image
: UIImage?)Nos permitirá cambiar la imagen de fondo.
func setBackgroundImageData(_
imageData
: NSData?)Por fin un poco de salsa, 🙂 este método nos permitirá cargar una imagen desde un objeto NSData.
Es importante mencionar que los datos serán enviados desde el iPhone al Apple Watch antes de que la vista sea mostrada.
func setBackgroundImageNamed(_
imageName
: String?)Si queremos mostrar una imagen de fondo desde un archivo, es decir llamando a la imagen desde nuestro repositorio, este método es el indicado.
func setCornerRadius(_
cornerRadius
: CGFloat)Este método nos permitirá ajustar el radio para dar a las esquinas un aspecto redondeado.
Animar la imagen de fondo
func startAnimating()
Para animar imágenes, este método comienza la animación. La animación usará los segundos establecidos en el Inspector dentro de nuestro Storyboard.
func startAnimatingWithImagesInRange(_
imageRange
: NSRange, duration duration
: NSTimeInterval, repeatCount repeatCount
: Int)Método para gestionar las animaciones de nuestras imágenes de fondo.
Teniendo en cuenta el significado de los siguientes parámetros:
imageRange: El rango de imágenes, dónde 0 es la primera imagen, 1 la segunda, y así sucesivamente.
duration: El tiempo en segundos para animar el bucle de imágenes. Teniendo en cuenta que un número negativo hace que la animación se reproduzca en orden inverso.
repeatCount: El número de veces que se repetirá la animación, dónde 0 reproducirá la animación de forma indefinida.
func stopAnimating()
Para la animación en curso, si no hay imagen animándose, este método no hace nada.
Pues esto es todo por ahora.
En breve comenzaremos a crear ejemplos, pero creo que es necesario conocer todas y cada una de las clases que componen el Framework, teniendo en cuenta que es muy pequeño, no es un gran trabajo.
OS WATCH 2.0
En el momento de publicar esta entrada, ya hay una beta de Watch OS 2.0 el nuevo sistema operativo para el Apple Watch.
Este actualización proveerá al desarrollador de nuevas funcionalidades, y la posibilidad de crear Apps de forma nativa.
El Framework se ha ampliado, pero en ningún caso estás perdiendo el tiempo aprendiendo en este Curso, pues estás clases siguen vigentes.
Así que no te despistes, pronto volveremos con una nueva clase.
Nos vemos en la próxima entrega, y ya sabes, si tienes dudas, o quieres hacer alguna sugerencia, o lo que sea, déjame un comentario 😉