SwiftMessages Exec Bad Access с использованием SwiftMessages.defaultConfig
Я пытаюсь использовать SwiftMessages
в мой проект Swift iOS.
SwiftMessages
был установлен с pod
в версии 6.0
Когда я использую пример кода, как это:
let error = MessageView.viewFromNib(layout: .cardView)
error.configureTheme(.error)
error.configureContent(title: "Error", body: "Something is horribly wrong!")
error.button?.setTitle("Stop", for: .normal)
SwiftMessages.show(view: error)
До сих пор все в порядке!
Но когда я пытаюсь использовать SwiftMessages.Config()
или же SwiftMessages.defaultConfig
как это:
let warning = MessageView.viewFromNib(layout: .cardView)
warning.configureTheme(.warning)
warning.configureDropShadow()
let iconText = ["", "", "", ""].sm_random()!
warning.configureContent(title: "Warning", body: "Consider yourself warned.", iconText: iconText)
warning.button?.isHidden = true
var warningConfig = SwiftMessages.defaultConfig
warningConfig.presentationStyle = .top
//warningConfig.presentationContext = .window(windowLevel: UIWindow.Level.statusBar)
SwiftMessages.show(config: warningConfig, view: warning)
Я получаю Exec Bad Access на SwiftMessages.show(config: warningConfig, view: warning)
Более того, он не признает собственность presentationContext
Вот почему строка в комментарии в моем коде. Однако это свойство указано здесь: https://github.com/SwiftKickMobile/SwiftMessages
Итак, что-то не так в моем коде, или есть ошибка внутри фреймворка?
1 ответ
Решение
Похоже, ваше приложение на Swift 4.1 или ниже. Совместимость со Swift заключается в следующем:
- Swift 4.2 -> SwiftMessages 6
- Swift 4.1 или ниже -> SwiftMessages 5