Está en la página 1de 1

Chuleta de Objective C & Cocoa Touch

Cabecera .h
#import <Foundation/Foundation.h> @interface Chuleta : SuperClase { // variables de instancia } // definir propiedades // definir mtodos de clase // definir mtodos de instancia @end

Plantilla inicializacin -(id) init{ if((self = [super init])){ // inicializacin propia } return self; }

Sintetizar proppiedades
Dispositivo

Tamao de los dispositivos


Tamao en pxeles 480x320 480x320 960x640 480x320 480x320 960x640 1024x768 1024x768 Pxeles por pulgada 163 163 326 163 163 326 132 132 iPod Touch 2 Generacin

@synthesize name=_name; @synthesize delegate;

iPod Touch 3 Generacin iPod Touch 4 Generacin iPhone 3G iPhone 3GS iPhone 4 iPad iPad 2

Implementacin .m
#import "Chuleta.h" @implementation NombreDeClase // Sintetizar propiedades // Implementar mtodos @end

Plantilla dealloc -(void) dealloc{ // Libera cualquier variable // retained // Elimina cualquier suscripcin // en NSNotificationCenter [super dealloc]; }

Usar propiedades self.name = @"Lucas"; // o bien [self setName:@"Lucas"];

Cuatro sitios donde inicializar controladores


-initWithNibName:budle: -awakeFromNib -viewDidLoad //no hagas nada que dependa de la geometra de la vista -viewWillAppear:animated:

Denir mtodos -(void) hacerAlgo; -(NSString *) hacerAlgoCon: (id) esto; -(id) hacerAlgoCon: (NSString *) esto yEsto: (NSArray *) otro;

Llamar mtodos [self hacerAlgo]; [self hacerAlgoCon:@"esto"]; [self hacerAlgoCon:@"esto" yEsto: [NSArray arrayWithObject:@"42"]]; Denir propiedades @property (atributo1, atributo2) <tipo> nombre;
retain aassign copy nonatomic readonly readwrite Retiene el argumento. IBOutlets Solo asigna. Delegates Hace una copia. NSString No seguro en multihebra Solo genera getter Genera getter & setter

Usos de NSString NSString *p1 = @"Lucas"; NSString *p2 = @"Grijander"; NSString *nombre = [NSString stringWithFormat:@"%@ %@", p1, p2]; NSString *resp = @"42"; int r = [resp intValue]; Usos de NSArray
NSMutableArray *v = [NSMutableArray arrayWithObjects:@"uno", @"dos", nil]; [v insertObject:@"3" atIndex:3]; [v addObject:[NSNumber numberWithFloat:3.14]]; for (id each in v) { NSLog(@"%@", each); } [v objectAtIndex:2];

Detectar si estamos en un iPad


if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) ... if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) ...

Implementar mtodos -(int) hacerAlgoCon: (NSString *) esto yEsto: (NSArray *) otro{ // Haz algo con esto y otro return 42; }

Eventos ms comunes de UIViewController


-loadView -viewDidLoad -viewWillDisappear: -viewDidDisappear: -viewWillAppear: -viewDidAppear: -shouldAutorotateToInterfaceOrientation: -didRotateFromInterfaceOrientation:

Copyright (c) Agbo Business Architecture, SL Fernando Rodrguez Romero www.cocoaosx.com fernando@agbo.biz twitter: @frr149 LinkedIn www.linkedin.com/fernando.rodriguez.romero

Tuesday, November 15,