UIActionSheet против UIAlertController – iPad

Нужно ли работать с UIAlertController в iOS8 или мы можем работать с UIActionSheet?

Я не хочу серьезных изменений в нашем коде для совместимости с iOS 8, но я сталкиваюсь с несколькими проблемами при работе с UIActionSheet на iPad.

Например, я получаю это исключение при использовании UIActionSheet:

UIPopoverPresentationController (<_UIAlertControllerActionSheetRegularPresentationController: 0x7c57bf90>) should have a non-nil sourceView or barButtonItem set before the presentation occurs. 

Я понимаю, что лучше работать с новым контроллером UIAlertController, но есть ли какое-либо обходное решение для этого, чтобы продолжить работу с UIActionSheet?

Также в тех местах, где на самом деле показывает UIActionSheet (без исключения), он содержит стрелку +, он не центрирован, как раньше (iOS7). Я использую showInView (также пытался работать с showFromRect, но получил те же результаты).

  • Создайте действие, когда я нажимаю кнопку, чем UIAlertcontroller
  • отклонить UIAlertController, представленный модульным контроллером просмотра
  • UIAlertController, если iOS 8, в противном случае UIAlertView
  • UIBarButtonItem теряет атрибуты пользовательского внешнего вида при представлении UIAlertController
  • iOS отклоняет UIAlertController в ответ на событие
  • Как отобразить UIAlertController из любого подкласса NSObject?
  • iOS-8 и более поздние версии - UITableView внутри UIAlertController
  • Должен ли я быть захвачен как сильный в обработчике UIAlertAction?
  • Цвет фона UIAlertController iOS10
  • показать UIAlertController вне ViewController
  • расширение UIAlertController удобство инициализации предупреждение
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.