Ciao a tutti oggi ho deciso di creare spiegarvi come fare un hello world in modo molto più particolare e divertente
creiamo subito un nuovo progetto di tipo cocoa application e diamo il nome di helloworld
andiamo nel file helloworldAppDelegate.h e digitiamo il seguente codice:
[code lang=”objc”]
#import <Cocoa/Cocoa.h>
@interface helloworldAppDelegate : NSObject <NSApplicationDelegate> {
NSWindow *window;
NSTextField *textField;
NSButton *button;
BOOL isPersonalized;// valore booleano per personalizzare il cambiamento
}
@property (assign) IBOutlet NSWindow *window;
@property (assign) IBOutlet NSTextField *textField;
@property (assign) IBOutlet NSButton *button;//per cambiare colore
@end
[/code]
Ora non ci resta che implementare il codice dunque riechiamoci nel file con l’estensione .m e scriviamo il seguente codice:
[code lang=”objc”]
#import "helloworldAppDelegate.h"
&nbsp;
@implementation helloworldAppDelegate
&nbsp;
@synthesize window,textField,button;
&nbsp;
– (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
[self generalize];
}
&nbsp;
&nbsp;
-(void) personalize {
self.window.backgroundColor = [NSColor redColor];//cammbiamo il background
[self.textField setStringValue:
[NSString stringWithFormat:@"Hello, %@!", NSFullUserName()]];//settiamo una stringa dal quale andrà a prendere le info del nostro nome direttamente daxcode
[self.button setTitle:@"Generalize"];
isPersonalized = YES;
}
&nbsp;
-(void) generalize {
self.window.backgroundColor = [NSColor greenColor];
[self.textField setStringValue:@"Hello, World!"]; [self.button setTitle:@"Personalize"]; isPersonalized = NO;
}
&nbsp;
-(IBAction) changeGreeting:(id)sender {
[self performSelector:
NSSelectorFromString([[self.button title] lowercaseString])];
}
@end
[/code]
ora non ci resta che creare l’interfaccia grafica :
Dunque andiamo sul mainwindow.xib e inseriamo una textfild e un pushbutton
Ora non ci re sta che fare i dovuti collegamenti ,andiamo su helloworldappdelegate(cuboblue)clicchiamoci su col tasto destro e facciamo i vari collegamenti :
Button———>PushButton
textField——>Textfield
changeGreeting——->Pushbotto
Download Progetto LINK