如果用户没有执行正确的操作,如何警告用户?

时间:2016-10-24 20:17:36

标签: swift notifications alert

我有一个照相机应用程序,它可以扫描QR码并读取它们。我还有一个按钮,可以在按下时打开QR码的链接。您能帮我解决一下如何向扫描无效代码的用户显示提醒通知。当我扫描一个假的QR码时,应用程序崩溃并停止工作。我想阻止它并显示一条通知消息:“此QR码无效,请尝试另一个”。

到目前为止,我已创建此代码:

func openJSON(_ Person: String)
{
let jsonData1 = (try? Data(contentsOf: URL(string: "\(transffered text)")!)) as Data!

var error : NSError?
let ReadableJSON1 = JSON ( data:jsonData1!, options: JSONSerialization.ReadingOptions.mutableContainers, error: nil )


if (error != nil){

    let myAlert = UIAlertController(title: "Please try another QR", message: error?.localizedDescription, preferredStyle: .alert) 
    let okAction = UIAlertAction(title: "Ok", style: .default, handler: nil)
    myAlert.addAction(okAction)
    self.present(myAlert, animated: true, completion: nil)

    return
}

1 个答案:

答案 0 :(得分:2)

您在JSON方法中将错误设置为nil,因此您的错误变量将始终为nil。确保您使用的是最新的SwiftyJSON.swift

var error: NSError?

let ReadableJSON1 = JSON(data: jsonData1!, options: .mutableContainers, error: &error)