我的问题是,我实施了一个警报,允许告诉用户打开应用程序时没有互联网连接,白色视图显示警报。 我的代码是:
Reachability * reach = [Reachability reachabilityWithHostname:@"www.google.com"];
if([reach isReachable])
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:[NSBundle mainBundle]];
MFSideMenuContainerViewController *container = (MFSideMenuContainerViewController *)self.window.rootViewController;
UINavigationController *navigationController = [storyboard instantiateViewControllerWithIdentifier:@"navigationController"];
UIViewController *rightSideMenuViewController = [storyboard instantiateViewControllerWithIdentifier:@"rightSideMenuViewController"];
[container setRightMenuViewController:rightSideMenuViewController];
[container setCenterViewController:navigationController];
}
else
{
connection = @"Please connect to Internet";
[self showAlarm:connection];
[reach startNotifier];
}
- (void)showAlarm:(NSString *)text
{
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Connection"
message:text delegate:self
cancelButtonTitle:@"الغاء"
otherButtonTitles:nil];
[alertView show];
}
上述方法允许在没有连接时提醒用户,如下面的屏幕截图:
现在,如果我有互联网连接,并尝试打开应用程序(单击应用程序图标),则会显示白页(仍在后台),
因为我上次打开应用程序时没有连接,所以白页显示,所以当我再次打开应用程序(现在我有互联网)时,应用程序的主页面必须启动,但因为它保存最后打开的视图,所以再次显示白页,如果我双击iphone的主按钮并关闭应用程序,再次运行它可以正常工作, 希望你现在有我。 是真的如果我把(应用程序不在后台运行)转到YES吗?或者你建议另一个解决方案,如果是,请告诉我这个选项(应用程序不在后台运行)做什么?如果有不便之处,使用它是否安全? 谢谢
答案 0 :(得分:0)
无论何时再来,都要在课堂上试试。
- (void)viewWillAppear:(BOOL)animated
{
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(handleEnterForeground:) name: @"UIApplicationDidBecomeActiveNotification" object: nil];
}
- (void) handleEnterForeground: (NSNotification*) sender
{
[self checkYourConnection_Method];
}
NSNotification
告诉应用程序它是否会从后台进入前台。
然后再次调用“互联网连接”检查方法。
希望这对你有帮助。
感谢。