HelloWorld sans Interface Builder
Afin de commencer très simplement, essayons de réaliser un classique HelloWorld mais sans utiliser Interface Builder afin de bien comprendre ce qui se passe. Interface Builder permet de gagner du temps mais dans le cadre de ce petit tutoriel, nous ne l’utiliserons pas.
1. Créer un projet de type Window-Based Application avec le nom très original de HelloWorld…
2. Le « template » de ce nouveau projet sous-entends que nous utilisons Interface Builder, il faut donc faire quelques modifications pour qu’il n’en tienne plus compte :
a. Dans l’onglet Groups & Files (partie gauche de l’écran), sélectionner le fichier Info.plist. Faire un clique-droit sur la ligne Main nib file base name et sélectionner Cut.
b. Toujours dans Groups & Files, clique-droit sur MainWindow.xib et sélectionner Delete. Valider la suppression en cliquant sur Move to Trash.
3. Dans le fichier main.m, changer le UIApplication() par :
int retVal = UIApplication(argc,argv,nil,@"HelloWorldAppDelegate");
4. Dans le fichier HelloWorldAppDelegate.h, remplaçons le contenu par :
#import "UIKit/UIKit.h" @class MyView; @interface HelloWorldAppDelegate : NSObject { UIWindow *window; MyView *view; } @end
5. Remplaçons le contenu du fichier HelloWorldAppDelegate.m par :
#import "HelloWorldAppDelegate.h" #import "MyView.h" @implementation HelloWorldAppDelegate -(void)applicationDidFinishLaunching:(UIApplication*) application { window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; CGRect frame = [UIScreen mainScreen].applicationFrame; view = [[MyView alloc] initWithFrame:frame]; view.message = @"Hello World !!!"; view.backgroundColor = [UIColor blueColor]; [window addSubview:view]; [window makeKeyAndVisible]; } -(void)dealloc { [view release]; [window release]; [super dealloc]; }
6. Aller dans File > New File et sélectionner UIView Subclass. Nommer le fichier MyView.m et cliquer sur Finish. Les fichiers MyView.h et MyView.m viennent d’être crées.
Remplir MyView.h avec :
#import "UIKit/UIKit.h" @interface MyView : UIView { NSString *message; } @property(nonatomic,copy) NSString *message; @end
Maintenant le fichier MyView.m avec le code ci-dessous :
#import "MyView.h" @implementation MyView @synthesize message; -(void)drawRect:(CGRect)rect { [message drawAtPoint:CGPointMake(50,150) withFont:[UIFont systemFontOfSize:28]]; }
7. Cliquer sur Build and Go …..
Aucun commentaire pour l'instant