我想在显示启动画面时从Web服务加载数据。在初始屏幕中,我需要显示这些数据。我怎样才能做到这一点 ?我需要从哪里打电话给网络服务?
答案 0 :(得分:3)
您必须在Appdelegate中调用webservice并创建全局NSmutableArray
并在您的应用中使用此数组
使用xml解析
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
NSString *path = [NSString stringWithFormat:your url path];
NSLog(@"path= %@",path);
[self parseXMLFileAtURL:path];
}
-(void)parseXMLFileAtURL:(NSString*)URL
{
NSURL *url = [NSURL URLWithString:URL];
RssParser = [[NSXMLParser alloc] initWithContentsOfURL:url];
[RssParser setDelegate:self];
[RssParser setShouldProcessNamespaces:NO];
[RssParser setShouldReportNamespacePrefixes:NO];
[RssParser setShouldResolveExternalEntities:NO];
[RssParser parse];
}
-(void)parserDidStartDocument:(NSXMLParser *)parser
{
}
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
}
- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError
{
}
-(void)parserDidEndDocument:(NSXMLParser *)parser
{
}
答案 1 :(得分:0)
在AppDelegate API中执行此操作
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
使用此方法进行Web服务调用。这是在main()
之后调用的第一个方法答案 2 :(得分:0)
在发布启动画面时选择一个NSTimer。
将启动画面置于睡眠模式。
将解析数据存储在数组中。
在下面的解析器方法
中-(void)parserDidEndDocument:(NSXMLParser *)parser
{
if([array count]>0){
//load view whatever you want and display fresh data
}else{
//Alert msg Data not available or display old data if available in database.
}
}