2010-04-25 3 views
0

Я пытаюсь связать 40 кнопок с одним методом обработчика событий, а затем выполнить обработку обработки из одного метода вместо 40. Я знаю, как связать его , но как только я туда доберусь не знаю, как отличить, какая кнопка была нажата. Кто-нибудь знает, как ссылаться на идентификатор объекта кнопки id или есть ли другой способ решить эту проблему? Любая помощь будет принята с благодарностью.Получить идентификатор объекта UI из кода

ответ

1

Для того, чтобы понять, что кнопка ведьмы была нажата, вам нужно сначала создать IBoutlet в вашем коде для каждой кнопки, а затем сравнить ее с sender, используя только оператор ==.

Пример:

//test.h 
@interface Test : UIViewController { 
    UIButton *button1,button2; 
} 

@property(nonatomic,retain) IBOutlet UIButton *button1; 
@property(nonatomic,retain) IBOutlet UIButton *button1; 

-(IBAction)click:(id)sender; 

Сравнить:

//test.m 
-(void)click:(id)sender 
{ 
    if (button1 == sender) 
    { NSLog(@"Button 1"); } 
    else if (button2 == sender) 
    { NSLog(@"Button 2"); } 
} 
+0

я знаю, что путь. я надеялся, что могу найти другое ... – Andoriyu

+0

@ andoriyu.mp: Вы можете использовать другие тривиальные способы, например, текст кнопки, но ... это тривиально :) – Cesar

Смежные вопросы