如何在延迟一段时间后调用didFinishLaunchingWithOptions

时间:2012-03-30 15:45:10

标签: iphone

我在didFinishLaunchingWithOptions方法中使用SOAP进行解析,只是第一次启动应用程序。 问题是,在使用

解析xml之前调用我的视图
  

- (无效)解析器:(的NSXMLParser *)解析器didEndElement:(的NSString *)的ElementName的namespaceURI:(的NSString *)的namespaceURI的qualifiedName:(的NSString *)QNAME

我的didFinishLaunchingWithOptions就像

  
      
  • (BOOL)应用程序:(UIApplication *)应用程序didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {   NSString * soapMessage = [NSString stringWithFormat:...................
  •   
     

//使用SOAP

的所有内容      

self.window.rootViewController = self.viewController;       [self.window makeKeyAndVisible];       返回YES; }

我想打个电话 self.window.rootViewController = self.viewController;     [self.window makeKeyAndVisible];     返回YES;

一旦我的

  

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName   完成后我得到了结果字符串。

目前,我在下一个视图中获得了结果字符串。 我得到结果字符串后,我只想调用下一个视图。

我怎么能得到它?

最好的问候

1 个答案:

答案 0 :(得分:2)

我认为你选择了错误的做法。 Apple要求应用程序在5秒内启动或启动。如果您的解析存在问题(例如由于网络连接不良),那么您的应用程序将在完成解析之前关闭,并且您的视图控制器将永远不会显示。

您应该将XMLParsing代码放在一个单独的类中,并在解析完成后在AppDelegate上执行回调。然后将解析的结果设置为视图控制器的属性,并在需要时更新接口(例如,通过在tableView上调用'-reloadData')。