Iphone 单击单元格或其他UI元素后,UITableView滚动中断

Iphone 单击单元格或其他UI元素后,UITableView滚动中断,iphone,objective-c,ios,ios6,Iphone,Objective C,Ios,Ios6,我创建了一个视图控制器,并添加了一个表视图作为子视图,以显示我从web服务异步获取的数据。最初,视图显示一个空表。获取数据后,对其进行排序,然后将其存储在一个数组中,该数组保存表视图的数据。此时我在tableView上调用reloadData,数据显示正确。此时,表视图按其应有的方式工作(滚动按预期工作)。然而,当我点击一个单元格,它会将我带到一个细节视图控制器(以模态显示),当我返回时,表视图已经滚动到顶部,并且滚动被禁用(但是内容仍然会反弹)。数据仍然存在,如果我在表格单元格上向上拖动,会显

我创建了一个视图控制器,并添加了一个表视图作为子视图,以显示我从web服务异步获取的数据。最初,视图显示一个空表。获取数据后,对其进行排序,然后将其存储在一个数组中,该数组保存表视图的数据。此时我在tableView上调用reloadData,数据显示正确。此时,表视图按其应有的方式工作(滚动按预期工作)。然而,当我点击一个单元格,它会将我带到一个细节视图控制器(以模态显示),当我返回时,表视图已经滚动到顶部,并且滚动被禁用(但是内容仍然会反弹)。数据仍然存在,如果我在表格单元格上向上拖动,会显示更多的数据,但一旦放开,就会从屏幕上弹回来

使问题进一步复杂化的是我的自定义拆分视图控制器,用于更改表视图中显示的内容。它通过手势显示和隐藏自身,按下其中的对象将在主表视图中重新提取数据。在服务完成加载数据并刷新表数据时,表会按预期再次滚动

该应用程序仅支持iOS 6.0及更高版本的手机设备类型

以下是从web服务检索数据的一些代码:

- (BOOL) getPatientVisits {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
    NSDictionary *response = [[HMWebServiceFacade defaultFacade] getVisitListingForPatientId:appDelegate.selectedPatientId withUserCredential:appDelegate.usernamePasswordHash];
    dispatch_async(dispatch_get_main_queue(), ^{
        if ([[response objectForKey:@"status"] isEqualToString:@"OK"])
        {
            patientVisits = [[HMCommonUtils commonUtils] sortedArrayOfVisits:[response objectForKey:@"visits"]];
        }
        else if ([response objectForKey:@"RequestError"])
        {
            [[HMCommonActions standardActions] displayErrorAlertMessage:[response objectForKey:@"RequestError"]];
        }
        else
        {
            [[HMCommonActions standardActions] displayErrorAlertMessage:@"There were no visits for your loved one." withTitle:@"Sorry"];
            patientVisits = nil;
        }

        [visitsTable reloadData];
        [self viewWillAppear:YES];
    });
});

return false;
}

在viewDidLoad中,我调用
[self-getPatientVisits]以及拆分视图中任何单击对象的回调函数

您可以在视图的
viewDidLoad
方法中设置
tableView
scrollEnabled
属性

问题在于自动布局和iOS 6的表视图标题。在
-(UIView*)tableView:(UITableView*)tableView viewForHeaderInSection:(NSInteger)节中使用约束会导致这种不稳定的行为。

请发布一些相关代码。请具体说明您的问题,并将其缩小到实际问题。按照Scott的建议发布代码也很好,所以其他人可以帮助您。太过健谈的问题可能会被关闭。问题是,我的表视图在与另一个与表视图不关联的元素交互后将无法正确滚动。这是我尝试的第一件事,它已经在情节提要中设置。