2011-10-10 12 views
14

'a özel bir seçici ekleyin. IOS bir yeni kullanıcıyım. Tıklandığında, kendi işlevlerimi yürütecek olan bir gezinti çubuğu düğmem var. Bunu yapmanın en iyi yolu nedir? Başka yoluUIBarButtonItem

[buttonHello setTarget:self]; 
[buttonHello setAction:@selector(sayHello:)]; 

Target oluşturulduğu sonra hedef ve eylemi ayarlamaktır

UIBarButtonItem *buttonHello = [[UIBarButtonItem alloc] initWithTitle:@"Say Hello"  
    style:UIBarButtonItemStyleBordered target:self action:@selector(sayHello:)]; 

örneği geçerli:

UIBarButtonItem *doneBarButtonItem=[[UIBarButtonItem alloc] init]; 
[email protected]"Done"; 
self.navigationItem.rightBarButtonItem = doneBarButtonItem; 
[doneBarButtonItem release]; 

cevap

42

bir yolu hedef ve eylem ile init etmektir çağrılacak nesne. Kendilik durumunda, yöntem nesnenin bu örneğinde olacaktır.

Eylem, çağrılacak yöntemdir. Tipik olarak, tasarımcıya bir eylem olduğunu ima etmek için IBAction ile süsleyebilirsiniz. Boşluğu derler. Burada Örnek Yöntemleri bölümünde listelenen kullanabileceğiniz farklı init aramaların çeşitli var

- (IBAction)sayHello:(id)sender 
{ 
    // code here 
} 
+0

[buttonHello setTarget: self]; 've' [buttonHello setAction: @selector (sayHello :)]; '.... için teşekkürler. – Greg

+0

Bu güzel yazılı cevap için teşekkürler, Bryan; Apple'ın API belgelerinin geri kalanını bu şekilde yeniden yazma şansınız var mı? ;-) – Slowburner

2

: Ayrıca

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIBarButtonItem_Class/Reference/Reference.html

- (id)initWithBarButtonSystemItem:(UIBarButtonSystemItem)systemItem target:(id)target action:(SEL)action 
- (id)initWithCustomView:(UIView *)customView 
- (id)initWithImage:(UIImage *)image style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action 
- (id)initWithTitle:(NSString *)title style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action 

, burada kullanım örnekleri görmek edebilirsiniz :

How to set target and action for UIBarButtonItem at runtime

Umarım bu yardımcı olur!