iphone - 向 WebService 写入请求的位置

标签 iphone objective-c ios json uitableview

我在 UITableView 上创建,在其中点击任何单元格 (-didSelectRowAtIndexPath) 调用与该单元格关联的 WebService。

问题是处理 JSON 响应,请求返回。 我应该从哪里处理该响应?

随着 View 的改变,当我点击表格的单元格时 (-didSelectRowAtIndexPath);我必须将所有响应信息传递给下一个 View 。

问题是:我是否应该在点击单元格之后和加载下一个 View 之前调用该服务。或者坚持这种方式(这让我的代码难以管理。)

哪个事件最适合处理此事件,(-didSelectRowAtIndexPath) 或下一个 View 的 (-viewDidLoad)?

有什么建议吗?
谢谢。

最佳答案

选择一行后,分配 NextViewController。通过在 NextViewController 中编写一个 setter 方法,通知 NextViewController 该行已被选中。在该设置方法中,启动您的请求。然后推送到 NextViewController。

您可以在 NextViewController 中处理当前显示的网络请求,您可以根据响应重新加载 View 。

编辑

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {    NextViewController *detailViewController = [[NextViewController alloc] initWithNibName:@"NextViewController" bundle:nil];
    id obj = [_list objectAtIndex:indexPath.row];
    //[detailViewController startWebRequest];
    [detailViewController startWebRequestWithObject:obj];
    [self.navigationController pushViewController:detailViewController animated:YES];
    [detailViewController release];
}

如果您需要传递任何对象,请将其传递给方法。在方法中,启动webrequest。并在 NextViewController 中处理响应。

关于iphone - 向 WebService 写入请求的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8699965/

相关文章:

Objective-C菜鸟 : How to define + call a method in main?

ios - 当点击自定义 TableView 单元格中的 UITextField 时转到新 View

ios - 比较 NSData 对象的创建/修改日期

iOS:在应用程序处于后台时设置屏幕亮度

ios - Swift 中的 Objective-C 完成 block

objective-c - NSOutlineView 仅显示 NSTreeController 层次结构的前 2 层

iphone - 如何去除iPhone应用程序中图像的背景?

ios - 查尔斯只显示未知包裹

android - 使用手机间隙从 Web 服务器加载 html 文件

iphone - 这个巨大的 if 语句感觉很不稳定......你会如何在 Objective C 中做到这一点