iPhone SDK: метод делегата UIActionsheet не вызывается

В моем приложении для iPhone у меня есть лист действий с 4 кнопками.

Теперь, чтобы выполнять действия по нажатию этих кнопок, я реализовал ActionSheet Delegate.

Метод делегата листа действий не вызывается при нажатии кнопок. Тот же код работает при интеграции в другой проект.

Я правильно объявил все имена методов.

Ниже приведен скриншот, на котором показан метод делегата.

альтернативный текст

Что может быть не так?


person Parth Bhatt    schedule 04.01.2011    source источник
comment
Разместите свой код напрямую, а не показывайте его изображение   -  person Aditya    schedule 04.01.2011
comment
Вы установили [actionSheet setDelegate:self] или не забыли установить для делегата значение самостоятельно при создании листа действий?   -  person EmptyStack    schedule 04.01.2011
comment
Проблема будет заключаться в том, как вы создаете и/или отображаете лист действий, а не в методе делегата.   -  person pwc    schedule 04.01.2011
comment
Саймон: Я отметил свой ответ. Пожалуйста, ознакомьтесь с ответом CMLlyod.   -  person Parth Bhatt    schedule 06.01.2011
comment
Вероятно, вы не хотите публиковать свой appid на публичном форуме...   -  person memmons    schedule 06.01.2011
comment
хорошо, спасибо Харкониан. Я не знал об этом. Я удалил это. Спасибо :)   -  person Parth Bhatt    schedule 07.01.2011
comment
@EmptyStack Спасибо за ваш ответ, он мне помог.   -  person MRX    schedule 26.04.2014
comment
Appid в этом вопросе все еще виден в истории вопросов. Я надеюсь, что это было признано недействительным в конце Apple.   -  person halfer    schedule 16.05.2018


Ответы (2)


Убедитесь, что вы установили для своего делегата UIActionSheet значение self:

actionSheet.delegate = self;

а также убедитесь, что вы реализуете <UIActionSheetDelegate> в заголовочном файле.

person cmlloyd    schedule 04.01.2011

Если вы используете код для вызова листа действий, как показано ниже

UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"YOUR TITLE" delegate:self cancelButtonTitle:nil destructiveButtonTitle:@"YOUR MESSAGE" otherButtonTitles:@"Cancel", nil];
[actionSheet showInView:self.view];
[actionSheet release];

Тогда не будет проблем с вызовом метода делегата,

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex 

Ваше здоровье

person Community    schedule 04.01.2011