Обработка UIActionSheet

В моем приложении у меня должно быть общее UINavigationBar держать с 3 UIBarButton предметы со своими действиями. Итак, вместо написания кода в каждом ViewControllers, я решил создать на BaseViewController который может быть подклассом для моего приложения ViewControllers,

После реализации этого UINavigationBar показывать со своими предметами нормально. В одной из моих кнопок бар пункт в BaseVC представит UIActionSheet и когда выбираете что-то из этого, необходимо получить выбранный индекс от BaseVC до MainVC. Итак, я создал собственный метод протокола для передачи выбранного индекса листа действий в мой MainVC из BaseVC.

MainVC == FirstViewController

Этот сценарий также работает. Но если я добавлю один или несколько UIActionSheet в моем FirstVC он вызывается и работает нормально. Но он отключает вызов делегата ActionsVase для BaseVC. Это означает, что он не позволяет вызвать делегата на BaseVC,

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

Выше делегат не уволен в BaseVC. Как справиться с обоими UIActionSheet из разных вк.

Есть идеи по этому поводу?

1 ответ

В этом случае вы должны вызвать его вручную, используя логику в вызове метода FirstViewController. Вы можете сделать это, позвонив [super actionSheet:actionSheet clickedButtonAtIndex:buttonIndex] когда вы знаете, что вызов предназначен для обработки BaseVC.

Другие вопросы по тегам