1

我有一个正在编写的 iOS 7 应用程序,当应用程序第一次启动时,如果我旋转到横向,然后回到纵向,应用程序会冻结/无响应。没有显示错误消息或给出日志。但是,如果我在旋转之前打开/呈现一个新视图,那么当我回到根视图并旋转以尝试重新创建问题时,就没有问题了。根视图位于故事板中制作的导航控制器中。我没有实现监听或处理旋转事件的方法。打开应用程序时唯一发生的事情是发送 REST API 请求并更新 tableview。这个异步调用是否会抛出我的主 UI 线程?(我可以根据需要为根视图发布代码。)用于 API 的代码来自 StackMob.com 的 SDK。

编辑: 我能够使用 iOS 6.1 重新创建

4

1 回答 1

1

通过将刷新控件包装在条件检查中,我能够解决刷新控件的问题。看来我遇到了一个边缘情况。

[self.managedObjectContext executeFetchRequest:purchaseFetch onSuccess:^(NSArray *results) {

    self.purchases = [NSMutableArray arrayWithArray:results];
    [self.tableView reloadData];
    [self.HUD hide:YES];
    if([self.refreshControl isRefreshing]){ //this check solved the freezing problems
        [self.refreshControl endRefreshing];
    }
} onFailure:^(NSError *error) {
    [self.HUD hide:YES];
    // Log details of the failure
    NSLog(@"Error: %@", error);
}];
于 2013-08-21T16:05:21.350 回答