我在應用程序中放置Reachability.swift文件,當互聯網可訪問性發生變化時,我想提醒用戶互聯網連接不可用。UIAlert不與NSNotification一起工作
這是我的代碼。
import UIKit
import Parse
class ViewController: UIViewController {
var reachability : Reachability?
var myAlert = UIAlertController()
@IBOutlet weak var label: UILabel!
@IBOutlet weak var textField: UITextField!
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(true)
do {
let reachability = try Reachability.reachabilityForInternetConnection()
self.reachability = reachability
} catch ReachabilityError.FailedToCreateWithAddress(let address) {
}
catch {}
NSNotificationCenter.defaultCenter().addObserver(self, selector: "HeyUserInternetDoesntWork", name: ReachabilityChangedNotification, object: nil)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func saveButtonTapped(sender: AnyObject) {
let save = PFObject(className: "Practice")
save["text"] = textField.text
save.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in
print("Object has been saved.")
}
}
dynamic func HeyUserInternetDoesntWork() {
if reachability!.isReachable() {
} else {
myAlert = UIAlertController(title: "No internet", message: "no good", preferredStyle: UIAlertControllerStyle.Alert)
let okAction = UIAlertAction(title: "Ok", style: UIAlertActionStyle.Default, handler: nil)
myAlert.addAction(okAction) }
}
}
這是不工作,我得到一個錯誤,
試圖加載而它重新分配是不允許的視圖控制器的視圖,並且可以導致未定義的行爲
我不明白這是什麼意思。 如果我把代碼打印(「無法訪問」)將正常工作。
我的問題
什麼是錯誤的含義是什麼?
如何讓我的警報有效?
如果還有其他方式讓用戶知道互聯網連接,請致電我。
如果已經從'UIAlertViewController'一樣,如果沒有使用它或類變量定義的警報! –
我宣佈對上述的UILabel通貨緊縮這個代碼,VAR myAlert = UIAlertController()////不過,我仍然有同樣的錯誤 –
嘗試在viewDidAppear您reachibility一次不是在viewDidLoad中 –