martes, 30 de diciembre de 2014

Objetos de Interfaz

La aplicación WatchKit utiliza objetos de interfaz para interactuar con la interfaz. 

Un objeto de Interface es una instancia de la clase WKInterfaceObject, o más específicamente una de sus subclases. WatchKit ofrece objetos de interfaz para la mayoría de los elementos visuales. Objetos de interfaz no son vistas

Son objetos proxy que comunican con las views utilizadas en la UI del Apple Watch.


CREACIÓN DE UN OBJETO DE INTERFAZ

Puede crear objetos de interfaz y conectar a los elementos correspondientes en el storyboard.

Nunca realice alloc / init de los objetos. Durante la inicialización del objeto, WatchKit crea los objetos de la interfaz para los outlets conectados automáticamente.

Al añadir propiedades declaradas para el objeto interfaz, definir la clase con el tipo adecuado e incluir la palabra clave IBOutlet en la declaración. 

Por ejemplo:



@interface PantallaController()
@property (weak, nonatomic) IBOutlet WKInterfaceLabel* label;
@end


Conecte cada propiedad declarada en el interface controller al correspondiente elemento del storyboard. Control-drag desde un elemento en el storyboard a la definición de la propiedad en la interfaz de la clase para crear un outlet.


CONFIGURAR LA INTERFAZ EN TIEMPO DE DISEÑO

En tiempo de diseño, usar Xcode para configurar la apariencia de los elementos visuales en el storyboard. Puede cambiar el texto, color y fuente de un WKInterfaceLabel objeto.


CONFIGURAR LA INTERFAZ EN TIEMPO DE EJECUCION

En el código de WatchKit extension, usted actualiza la interfaz de usuario ejecutando métodos de alguna referencia de un objeto de interfaz. 

Un controlador de interfaz puede cambiar la configuración de sus objetos sólo mientras está activo, que incluye el tiempo de inicialización. 

Llamar a los métodos init, awakeWithContext: y willActivate para asignar datos a las etiquetas, imágenes y otros objetos a la interfaz de usuario. 

En tiempo de inicialización, es importante dejar que WatchKit inicializar el interface controller antes de hacer cualquier otra acción. Los métodos de inicialización de WKInterfaceController es donde WatchKit crea objetos de interfaz de la aplicación. Por lo que llamar primero a la implementación super.

Swift

- (instancetype)init {



  • // Primero llamar al método super
  • self = [super init];
  • if (self){
  • // Ahora es seguro utilizar los objetos de la interfaz
  • [self.etiqueta setText:@"Texto etiqueta:"];
  • }
  • return self;
  • }

Objective-C
  • override init {
  • // Primero llamar al método super
  • super.init;

  • // Ahora es seguro utilizar los objetos de la interfaz
  • label.setText("Hello New World");
  • }

Para mejorar el rendimiento y la vida de la batería, WatchKit framework optimiza cualquier intento de establecer los valores de los objetos de interfaz en la aplicación. Siempre que sitúe los valores de uno o más objetos de interfaz en la misma iteración,  los nuevos valores se unen para transmitir a Apple Watch los valores en una sola llamada.


RESPONDER A LAS INTERACCIONES DEL USUARIO

Utilizar buttons, switches y otros controles para indicar cambios en la aplicación. Cuando se pulsa un botón o el valor de otros cambias de control, WatchKit llama al método acción asociado en el controlador de interfaz. Cada tipo de objeto tiene un formato requerido.  Cambie el nombre de los métodos de acción a algo apropiado para su aplicación.

Objeto
Método Acción
Button
- (IBAction)buttonAction
Switch
- (IBAction)switchAction:(BOOL)on
Slider
- (IBAction)sliderAction:(float)value
Menu Item
- (IBAction)menuItemAction










No hay comentarios:

Publicar un comentario