Обработка 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.