Я сталкиваюсь со странным сбоем. При использовании UIAlertController
.
сбой происходит, когда на экране отображается UIAlertController
.
Вот код ошибки: CoreGraphics CGColorSpaceEqualToColorSpaceIgnoringRange
Я сделал более простую версию кода, которая по-прежнему вызывает сбой в 100% случаев.
В моем контроллере
@IBAction func handleSaveOrCreate(_ sender: Any) {
self.showAlert("Test")
}
Вот код, если showAlert
public func showAlert(_ title: String?) {
let alertController = UIAlertController(title: title, message: nil, preferredStyle: .alert)
self.present(alertController, animated: true, completion: nil)
}
Контроллер относится к классу AdPeriodViewController
, который успешно отображается с этим кодом
let vc : AdPeriodViewController = AdPeriodViewController.instance() as! AdPeriodViewController
self.navigationController?.pushViewController(vc, animated: true)
IBAction запускается событием TouchUpInside
UIButton
Я компилирую в swift 4.2 и запускаю свой тест на iPhone 6S + под управлением iOS 12.2
Этот сбой, кажется, происходит только на iOS 12 -> (случается 101 для более чем70 пользователей за последние 7 дней)
* Редактировать для Lame *
Чтобы не ограничивать этот ярлык showAlert
вот что я сделал:
let alertController = UIAlertController(title: "title", message: "message", preferredStyle: .alert)
print(alertController.title) // display Optional("title")
print(alertController.message) // display Optional("message")
alertController.addAction(UIAlertAction(title: "btnTitle", style: .default, handler: {(alertAction) in print("btnClicked")}))
self.present(alertController, animated: true, completion: nil)
Еще больше - если я изменю preferred style
на .actionSheet
сбой исчезнет