【问题标题】:Call web service in background and shows its data in both map view and table view在后台调用 Web 服务并在地图视图和表格视图中显示其数据
【发布时间】:2014-03-22 12:04:39
【问题描述】:

我正在使用 iPad 的拆分视图控制器,我们需要在表格视图和地图视图中同时显示来自 Web 服务的数据。这意味着我们需要在主视图和详细视图中显示相同的数据。

- (BOOL)application:(UIApplication *)application 
   didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

   self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen]
   bounds]];

    // Override point for customization after application launch.
    MasterViewController *masterViewController = [[MasterViewController
    alloc] initWithNibName:@"MasterViewController" bundle:nil];

    UINavigationController *masterNavigationController = 
    [[UINavigationController alloc] initWithRootViewController:
    masterViewController];

    DetailViewController *detailViewController = 
    [[DetailViewController alloc] initWithNibName:@"DetailViewController" 
    bundle:nil];

    UINavigationController *detailNavigationController = 
    [[UINavigationController alloc] initWithRootViewController:
    detailViewController];

    masterViewController.detailViewController = detailViewController;

    self.splitViewController = [[UISplitViewController alloc] init];
    self.splitViewController.delegate = detailViewController;

    self.splitViewController.viewControllers =
    @[masterNavigationController, detailNavigationController];

    self.window.rootViewController = self.splitViewController;

    [self.window makeKeyAndVisible];

    return YES;
}

我只需要调用网络服务并在两个视图中显示数据。

所以我将在地图中显示来自 web 服务数据的图钉及其在主视图中的详细信息。

然后我还需要将所有数据存储在数据库中。

【问题讨论】:

    标签: iphone uitableview mkmapview uisplitviewcontroller


    【解决方案1】:

    这听起来像使用观察者通知模式会很好,使用 NSNotificationCenter。您可以生成一个 NSURLConnection,并在下载成功时在委托方法中发布一个 NSNotification。然后在您要更新的任何视图中,只需将观察者添加到此通知中,并根据需要更新视图。

    如果你之前没有使用过通知,NSHipster 的文章对它有一个很好的概述:http://nshipster.com/nsnotification-and-nsnotificationcenter/

    【讨论】:

    • 我是 iphone 开发新手 ..你能解释一下我在应用程序委托中调用 Web 服务的位置以及如何在两个控制器中使用 ..在细节中使用一些代码或示例..
    猜你喜欢
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 2018-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多