【发布时间】:2018-06-06 21:38:16
【问题描述】:
我正在开发一款 iPad 应用程序,但遇到了问题。我使用 Reachability 来检查设备是否连接到网络(工作正常),并且我想更新图像视图以在网络断开连接时将其从 wifi 图标传递到无 wifi 图标。所以我发现我可以做一个后台进程来不断检查设备是否像这样连接:
// Allocate a reachability object
Reachability* reach = [Reachability reachabilityWithHostname:@"www.google.com"];
// Set the blocks
reach.reachableBlock = ^(Reachability*reach)
{
dispatch_async(dispatch_get_main_queue(), ^{
connectivity = true;
NSLog(@"REACHABLE!");
});
};
reach.unreachableBlock = ^(Reachability*reach)
{
connectivity = false;
NSLog(@"UNREACHABLE!");
};
// Start the notifier, which will cause the reachability object to retain itself!
[reach startNotifier];
这可行,但我不知道将我的图像修改放在哪里才能使其正常工作,因为如果我把它放在 NSLog() 之前,我会得到“imageView setImage must be used only from main thread”
感谢您的帮助。
【问题讨论】:
标签: ios objective-c networking reachability