¿Cómo controlar el punto de vista de su aplicación para ipad

Al crear su aplicación para iPad, es necesario incluir código que controla la vista en esa aplicación. El siguiente ejemplo aplicación de IPAD está diseñado para mostrar las palabras de desplazamiento por la pantalla. Después de abrir la DeepThoughtsViewController.m archivo de forma que aparece en el editor de texto, que había insertar el código en negrita (el código que no está en negrita es suministrado por la plantilla de vista de aplicación basado en):

#importar "DeepThoughtsViewController.h"#importar "constants.h"@implementation DeepThoughtsViewController@synthesize velocidad, imageView-#pragma marca -#pragma marca de ciclo de vida Ver/ * // El inicializador designado. Anular Para realizar la configuración que se requiere antes de la vista es loaded.- (id) initWithNibName: (NSString *) nibNameOrNil paquete: (NSBundle *) nibBundleOrNil {if (auto = [súper initWithNibName: haz nibNameOrNil: nibBundleOrNil]) {// personalizada inicialización de retorno automático} -} * // * // Implementar loadView para crear una jerarquía de vistas mediante programación, sin necesidad de utilizar un (void) {} ​​loadView nib.- * // * // Implementar viewDidLoad hacer una configuración adicional después de cargar la vista, típicamente de un nib.- (void) viewDidLoad {[súper viewDidLoad] -} * /- (Void) {viewDidLoad  [Súper viewDidLoad] - [NSTimer scheduledTimerWithTimeInterval: 0.5 de destino: Selector auto: @selector (OnTimer) userInfo: cero repeticiones: SÍ] - si ([[NSUserDefaults standardUserDefaults] objectForKey: kWordsOfWisdom]) {[[NSUserDefaults standardUserDefaults] setObject: @"Groovy Peace Love Music" forKey: kWordsOfWisdom] -fallingWords = @"Groovy Peace Love Music"- }  else {fallingWords = [[NSUserDefaults standardUserDefaults] stringForKey: kWordsOfWisdom] - } si ([[NSUserDefaults standardUserDefaults] objectForKey: kSpeed]) {[[NSUserDefaults standardUserDefaults] setDouble: 10,0 forKey: kSpeed] - velocidad = kMaxSpeed-10.0-}  else {velocidad = kMaxSpeed ​​- [[NSUserDefaults standardUserDefaults] doubleForKey: kSpeed] - }}#pragma marca -#pragma marca de Animación- (Void) {OnTimer  UILabel * fallingImageView = [[UILabel alloc] initWithFrame: CGRectMake (0, 0, 100, 30)] - fallingImageView.text = fallingWords- fallingImageView.textColor = [UIColor purplecolor] -  fallingImageView.font = [UIFont systemFontOfSize: 30] - fallingImageView.backgroundColor = [UIColor clearColor] -   fallingImageView.adjustsFontSizeToFitWidth = Si-  int startX = round (random ()% 400) - int EndX = round (random ()% 400) - // velocidad de caída doble RandomSpeed ​​= (1 / vuelta (random ()% 100) 1) * velocidad- // tamaño de la imagen- doble scaleH = (1 / vuelta (random ()% 100) 1) * 60 doble scaleW = (1 / vuelta (random ()% 100) 1) * 200  [AddSubview self.view: fallingImageView] -  fallingImageView.frame = CGRectMake (startX, -100, scaleW, scaleH) -  fallingImageView.alpha = .75-  [UIView beginAnimations: contexto nula: fallingImageView] - [UIView setAnimationDuration: RandomSpeed] - [UIView setAnimationDelegate: auto] - [UIView setAnimationDidStopSelector: @selector (animationDone: final: contexto:)] -  fallingImageView.frame = CGRectMake (EndX, self.view.frame.size.height, scaleW, scaleH) -  [UIView commitAnimations] -}-(Void) animationDone: (NSString *) animationID terminado: (NSNumber *) Contexto final: (id) {contexto UIImageView * fallingImageView = contexto- [FallingImageView removeFromSuperview] - [Liberación fallingImageView] -}#pragma marca -Controles marca #pragma- IBAction ajustes () {}#pragma marca -#pragma marca de orientación// Reemplazar para permitir orientaciones distintas de la shouldAutorotateToInterfaceOrientation orientation.- retrato (BOOL): (UIInterfaceOrientation) interfaceOrientation {return} Si-#pragma marca -Gestión de memoria marca #pragma- (Void) {// didReceiveMemoryWarning libera la vista si no tiene un supervista [súper didReceiveMemoryWarning] -. // liberar cualquier caché de datos, imágenes, etc., que no están en uso.} - (void) {// viewDidUnload liberar cualquier subvistas retenidas de la principal view.// por ejemplo, self.myOutlet = nil -} - (void) dealloc {[súper dealloc] -} @ final

He aquí un desglose del código agrega:

  • La primera declaración se agrega importaciones las constants.h archivo. Ahora puede utilizar cualquier clave que ha configurado con NSUserDefaults en el código siguiente para recuperar la configuración de usuario.

  • Objective-C crea los métodos de acceso que necesita para usted cuando usted incluye una @synthesize Sentencia- la declaración en el código anterior crea un método de acceso para cada @propiedad declaración (velocidad y imageView).

  • Los dos # Marca Pragma declaraciones contienen el código de inicialización y la carga de visión.

  • los viewDidLoad mensaje se envía inmediatamente después de la vista se ha cargado desde el archivo de punta (la .xib archivo que puede modificar en el Interface Builder). Este es el lugar donde se inserta su código de inicialización de vista, que en este caso significa que exhibe palabras que caen DeepThoughts’. los viewDidLoad método que ha insertado comienza a cabo mediante la creación de un contador de tiempo para el intervalo entre cada pantalla de la caída de las palabras.

    Se utiliza el NSTimer Clase para crear temporizadores. Un temporizador de espera hasta que haya transcurrido un intervalo de tiempo determinado y luego incendios, el envío de un mensaje especificado a un objeto de destino. Este código utiliza scheduledTimerWithTimeInterval: objetivo: Selector: userInfo: repite: método de clase para crear el temporizador y programar en el bucle de ejecución actual en el modo por defecto. El intervalo es de 0,5 segundos, el objetivo es yo, y el selector es el mensaje que se enviará a la meta cuando se activa el temporizador - en este caso, A tiempo. los Información de usuario es la información del usuario para el temporizador (ajustado a nulo), Y el temporizador se establece en repetir - es decir, se reprogramará en repetidas ocasiones hasta que invalidado.

  • A continuación, el código comprueba si el kWordsOfWisdom ajuste se ha movido en NSUserDefaults.

  • El código mueve las preferencias del usuario en NSUserDefaults sólo después de que se ejecuta la aplicación por primera vez. Si los ajustes no se han movido en NSUserDefaults sin embargo, el código utiliza el valor inicial de preferencia ( “Groovy Peace Love Music”) para fallingWords. Si los ajustes se han movido en NSUserDefaults, el código de las lee y luego conjuntos fallingWords a lo que la preferencia del usuario es. El código se repite esta comprobación con el velocidad ajuste.

    Tu usas standardUserDefaults (un NSUserDefaults método de clase) para obtener acceso a los valores predeterminados de usuario estándar, y puede almacenar los datos allí.

  • los marca #pragma sección titulada controles el método incluye la configuración de marcador de posición para conectar el botón de información a la luz controlador de vista. Este es el acción método que utiliza la IBAction índice.

  • Conexión del temporizador al dibujo real de la pantalla es la A tiempo método. los UILabel clase implementa una vista de texto de sólo lectura. Puede utilizar esta clase para dibujar una o varias líneas de texto estático. En este caso, el bloque de código se utiliza la initWithFrame método con el CGRectMake para crear un rectángulo, con la coordenada x y la coordenada y del punto de origen del rectángulo en (0, 0) y una anchura y una altura especificada (100, 30).

    Video: Controla tu MAC/PC desde tu iPhone, IPad y iPod Touch TUTORIAL

  • El código convierte la fallingWords cadena a fallingImageView para la pantalla- establece el color del texto, la fuente y el color-fondo y ajusta el tamaño de fuente para el ancho. los fuente y color de texto propiedades se aplican a toda la cadena de texto.

    Video: COMO PONER EL CUADRITO CON EL CIRCULITO EN MEDIO PARA IPHONE, IPOD Y IPAD || iOS

  • El siguiente bloque de código utiliza la función aleatoria para los puntos inicial y final (startX y EndX), Para la velocidad, y para la anchura (scaleW) Y la altura (scaleH) para fallingImageView.

  • los beginAnimations: contexto: método comienza el bloque de animación, y el commitAnimations método finaliza el bloque. Dentro del bloque, el código establece los valores de propiedad para hacer cambios visuales que componen la animación.

    Video: Tutorial app Lyrics+ for iPad

  • los setAnimationDuration método establece la duración de la animación, y setAnimationDidStopSelector establece el mensaje que se enviará al delegado animación cuando la animación se detiene. El delegado de animación es animationDone, que utiliza removeFromSuperview (Un método de instancia de la UIView clase) para eliminar fallingImageView y luego usa lanzamiento (Un método de instancia de la NSAutoreleasePool clase) para liberar fallingImageView.

    Video: Como Reproducir Adobe Flash en el Ipad Iphone Ipod (GRATIS)

  • Por último, este código tiene dos # Marca Pragma declaraciones con motivo de la sección de orientación y dos más # Marca Pragma declaraciones anteriores del didReceiveMemoryWarning Método para marcar esa sección como la gestión de memoria.

Artículos Relacionados