Я пытаюсь добавить информационную кнопку в свое приложение для предоставления настраиваемой помощи.
Вместо того, чтобы добавить кнопку к пиру и связать событие (touchUpInside) с контроллером, я решил добавить кнопку программно. Кнопка появляется вверх. Когда я добавляю целевой обработчик события, который будет выполняться при касании кнопки, он не работает. Что мой метод (doHelp) не вызывается при прикосновении к кнопке.
Когда я его отлаживал, событие не регистрируется кнопкой! Хотя код не выдает никаких исключений.
Вот фрагмент кода ОТ представления:
// Create a Button to get Help
UIButton *helpButton = [UIButton buttonWithType:UIButtonTypeInfoDark ] ;
buttonRect = helpButton.frame;
// CALCulate the bottom right corner
buttonRect.origin.x = rect.size.width - buttonRect.size.width - 8;
buttonRect.origin.y = rect.size.height - buttonRect.size.height - 8;
[helpButton setFrame:buttonRect];
[helpButton addTarget:self action:@selector(doHelp:) forControlEvents:UIControlEventTouchUpInside];
[helpButton setEnabled:TRUE];
[self addSubview:helpButton];
........
// Another METHOD ELSEWHERE in the VIEW object
-(void)doHelp:(id)Sender
{
[self setHelpNeeded:TRUE];
[self setNeedsDisplay];
}
Что я делаю не так, пожалуйста?
Я посмотрел на справку и образцы SDK и очень расстроен!
Надеюсь, еще пара глаз поможет! : -)
Этот фрагмент кода находится в View Object на тот случай, если вам нужно это знать.
Я просто добавил doHelp, чтобы помочь первым двум респондентам ... спасибо.
** ОБНОВЛЕНИЕ 6/4/09 ** -
Я пытался всю ночь, и ничего не получалось. Я думаю, что в настройке селектора метода что-то не так, так как мой метод никогда не вызывается. Все остальное выглядит хорошо. Даже использование файла NIB не работает. Я пометил кнопку, извлек ее и добавил селектор метода, но безрезультатно. Есть что-то фундаментальное, что я делаю неправильно ... Ааааа !!!
Есть идеи, кто-нибудь?