2016-04-04 26 views
0

kullanarak uygulamadan çıkma Bir kullanıcı internet bağlantısı olmadan uygulamayı açarsa, bağlantının gerekli olduğunu belirten bir pencere açılır ve bir ok düğmesi vardır. Uygulamadan çıkmak için ok düğmesine basıyorum.Bir UIAlertController

if !isConnectedToNetwork(){ 
    let alert = UIAlertController(title: "No Internet", message: "You need an internet connection to use this app", preferredStyle: UIAlertControllerStyle.Alert) 
    alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil)) 
    self.presentViewController(alert, animated: true, completion: nil) 
} 

Ben uygulamadan çıkmasına bu kullanmak için gidiyorum:

UIControl().sendAction(Selector("suspend"), to: UIApplication.sharedApplication(), forEvent: nil) 

Sadece yukarıda Tamam düğmesini bağlamak için nasıl bilmiyorum İşte ne var.

+0

Bu 'handler' parametre UIAlertAction'' in için budur tarafından TAMAM kullanıcı basın. – rmaddy

+3

Apple'dan Erişilebilirlik kullanıyor musunuz? Eğer öyleyse, ekranda bir mesaj görüntüleyebilir ve kullanıcı etkileşimini devre dışı bırakabilirsiniz. İnternet bağlantısı geri geldiğinde, kullanıcı etkileşimini etkinleştirebilir ve mesajdan kurtulabilirsin. Bu durumda, bir uyarı yerine bir etiket kullanırdım. –

cevap

2

Sen işleyebilir, aşağıdaki kodu

alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, 
handler: { (action:UIAlertAction!) -> Void in 
    //after user press ok, the following code will be execute 
    NSLog("User pressed OK!!") 
})) 
4

Yapmayın. Apple bunu reddeder (eğer görürlerse).

Sadece kullanıcıyı bilgilendirin ve bir 'yeniden deneme' düğmesi ekleyin. Yeniden deneme düğmesi, bağlantıyı tekrar kontrol etmelidir.

Soruyu gerçekten yanıtlamak için, düğme eyleminde handler: nil'u ayarladınız, bunun yerine aslında bir işleyiciyi ayarlayabilir ve istediğiniz mantığı çağırmak için kullanabilirsiniz.

+1

Bu aslında soruyu yanıtlamıyor. Bu iyi bir yorum ama soruya bir cevap değil. – rmaddy

+0

fair point @rmaddy, bu bölümün kapağına eklendi, teşekkürler – Wain

+0

Cevabınız için teşekkürler, biraz çevrimiçi baktım, bunun bir uygulama kazası olarak değerlendirileceğini reddetmesinin sebebi nedir? – chrisz