Ciao a tutti ragazzi con l’arrivo del nuovo OS di casa apple sono state aggiunte tante succose novità e prima di ripartire per le vacanze vorrei mostravene almeno una , da questo momento in poi è davvero molto semplice inviare un tweet, una mail ecc direttamente dalla nostra app ma non perdiamoci in chiacchiere e iniziamo subito con la creazione di un nuovo progetto di tipo cocoa application .
Rechiamoci nel file AppDelegate.h e scriviamo il seguente codice :
#import <;Cocoa/Cocoa.h>;
@interface AppDelegate : NSObject <;NSApplicationDelegate,NSSharingServicePickerDelegate,NSSharingServiceDelegate>;
@property (assign) IBOutlet NSButton *shareButton;
@property (assign) IBOutlet NSImageView *imageView;
@property(nonatomic,retain)IBOutlet NSTextView *textview;
– (IBAction)condividi:(id)sender;
@property (assign) IBOutlet NSWindow *window;
@end
Creiamo l’interfaccia grafica
Rechiamoci presso il file MainMenu.xib e impostiamo l’interfaccia grafica in questo modo :
1 textview
1 button
1 imageview
Ora non ci resta che fare tutti gli opportuni collegamenti .
E’arrivato il momento di implementare il codice vero e proprio quindi ora tocca al file AppDelegate.m andiamo a scrivere il seguente codice :
#import “AppDelegate.h”
@implementation AppDelegate
@synthesize shareButton;
@synthesize textview;
@synthesize imageView;
;
– (void)dealloc
{
[super dealloc];
}
– (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
//inizializzo l’immagine del bottono share
[self.shareButton setImage:[NSImage imageNamed:NSImageNameShareTemplate]];
[self.shareButton sendActionOn:NSLeftMouseDownMask];
}
– (IBAction)condividi:(id)sender {
//creiamo un mutable array per inserire al suo interno il testo e l’immagini da condividere
NSMutableArray *shareObject=[NSMutableArray arrayWithObject:[self.textview string]];
NSImage *image=[self.imageView image];
if (image) {
[shareObject addObject:image];
}
//creiamo l’oggetto per la condivisione lo allochiamo e lo inizializiamo con il mutable array
NSSharingServicePicker *sharingPicker=[[NSSharingServicePicker alloc]initWithItems:shareObject];
//impostiamo il delegate
sharingPicker.delegate=self;
//mostra le condivisioni
[sharingPicker showRelativeToRect:[self.shareButton bounds] ofView:self.shareButton preferredEdge:NSMaxYEdge];
}
@end
Il risultato finale dovrebbe essere simile a questo :
La condivisione su Facebook sarà disponibile in autunno.