【发布时间】:2014-05-28 16:05:39
【问题描述】:
我有一个 TableView,它使用方法调用 retrieveData 从服务器接收数据。
我使用可达性来测试用户是否有互联网连接。
如果是,则调用 retrieveData。
如果不是,我会打印 NSLog。
一切正常,但是.. 即使它有连接,表格也需要几秒钟才能加载,这不是我想要的。 我怎么能马上?
我在 viewDidLoad 方法中检查连接。
- (void)viewDidLoad
{
[super viewDidLoad];
Reachability* reach = [Reachability reachabilityWithHostname:@"www.google.com"];
reach.reachableBlock = ^(Reachability*reach)
{
// Load the Table Content
[self retrieveData];
};
reach.unreachableBlock = ^(Reachability*reach)
{
NSLog(@"no internet");
};
[reach startNotifier];
}
【问题讨论】:
-
如果
Reachability立即返回,这似乎是一个表格视图加载问题。在你的代码中探索需要时间的地方。 -
你为什么要使用可达性?这更有助于了解用户何时转换为在线或从在线转换。如果无论如何都要显示表格视图,只需进行网络连接并在错误返回时处理错误。听起来您实际上是在问“如何在零秒内获取网络数据?”
-
@Tommy 我只想检查与的连接,如果是,则加载表,如果不是。为用户发送通知。
标签: ios uitableview reachability