2016-07-23 12 views
1

Ich erstelle eine "keine Internetverbindung". Dies ist zum Öffnen einer App ohne Internetverbindung. Also zuerst habe ich diesen Code zu meinem bridge.hÖffnen einer App ohne Internetverbindung und zeigt Alarm auf iOS

import „Reachability.h“

Dann folgende Methode Erreichbarkeits Klasse hinzuzufügen. Zuerst erklären in .h-Datei:

+ (BOOL)checkIntenetRechable; 

und implementieren in .m-Datei

+ (BOOL)checkIntenetRechable 
{ 
    BOOL isInternetAvailable; 
    Reachability *internetReach = [Reachability reachabilityForInternetConnection]; 
    [internetReach startNotifier]; 

    NetworkStatus netStatus = [internetReach currentReachabilityStatus]; 
    BOOL connectionRequired = [internetReach connectionRequired]; 
    NSString *statusString = @""; 

    switch (netStatus) 
    { 
     case NotReachable: 
     { 
      statusString = @"Access Not Available"; 
      isInternetAvailable = FALSE; 
      break; 
     } 
     case ReachableViaWWAN: 
     { 
      statusString = @"Reachable WWAN"; 
      isInternetAvailable = TRUE; 
      break; 
     } 
     case ReachableViaWiFi: 
     { 
      statusString = @"Reachable WiFi"; 
      isInternetAvailable = TRUE; 
      break; 
     } 
    } 

    if(connectionRequired) 
    { 
     statusString = [NSString stringWithFormat: @"%@, Connection Required", statusString]; 
     isInternetAvailable = FALSE; 
    } 
    return isInternetAvailable; 
} 

Dann, wo ich Internet-Verbindung überprüfen, möchte ich den folgenden Ausschnitt setzen dort und alert Benutzer darüber.

if Reachability.checkIntenetRechable() == false { 
    let alertView = UIAlertCole: "APP_NAME", message: "Please check your internet connection.", preferredStyle: UIAlertControllerStyle.Alert) 
    //alertView.addAction(UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Cancel, handler: { (action: UIAlertAction) in })) 
    alertView.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: { (action: UIAlertAction) in 
     // Put some code for okay button 
    })) 
    self.presentViewController(alertView, animated: true, completion: nil) 
} 

und nach einer Weile bekam ich This error ... was das Problem sein könnte ??

+0

Sollte dies nicht mit "objective-c" und nicht mit "C++" markiert werden? –

+0

ändern UIAlertView = "App-Name", Nachricht: ... zu UIAlertView ("App-Name", Nachricht: ...) – Roee84

+0

Danke für den Vorschlag @JesperJuhl. –

Antwort

0
let alert = UIAlertController(title: "Alert", message: "Message", preferredStyle: UIAlertControllerStyle.Alert) 
    alert.addAction(UIAlertAction(title: "Click", style: UIAlertActionStyle.Default, handler: nil)) 
self.window?.rootViewController?.presentViewController(alert, animated: true, completion: nil) 
+0

Ich habe diese [Fehler] (https://drive.google.com/file/d/0B0Je1_NFqcfXWHUwdGVXSkxZR1E/view?usp=sharing) .. Was könnte der Fehler sein? (https://drive.google.com/file/d/0B0Je1_NFqcfXWHUwdGVXSkxZR1E/view?usp=sharing) –

+0

@Babymouse Sie müssen den View-Controller nur auf dem View-Controller präsentieren. Du kannst so etwas wie 'self.window! .rootviewcontroller! .presentViewControoler (alert)' machen, während du diesen Code in der App delegate class schreibst. – D4ttatraya

+0

Vielen Dank @SaurabhJain –

Verwandte Themen