如何在返回tableview时在tableview中启用用户交互

时间:2011-07-20 09:37:59

标签: iphone

在我的应用程序中,我正在做tableView。通过单击行,新视图将导航。在导航新视图之前,应用程序正在处理来自服务器的数据。在处理完数据之前,视图将无法导航。在这段时间内,我想禁用tableview的用户交互,因此用户无法选择更多行。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    tableView.userInteractionEnabled = NO;
}

请注意,当我再次回到tableview时,用户将再次允许选择任何行。 我不知道,我怎样才能再次启用用户交互。

2 个答案:

答案 0 :(得分:0)

要在导航后回来,请在viewWillAppear中添加以下句子,这样可以再次让您的表格查看用户互动为真。

tableView.userInteractionEnabled = YES;

答案 1 :(得分:0)

我假设你是异步获取数据的。 在这种情况下,您可以从连接委托方法重新启用用户交互。如果您使用的是NSURLRequest / NSUrlConnection,则委托方法为:connectionDidFinishLoading:(不要忘记connection:didFailWithError:)。

来自NSURLConnection Reference

  

connectionDidFinishLoading:

     

连接成功加载后发送。

因此,当数据存在且您完成处理后,您将重新启用表格视图。