Iphone 未将整个xml数据获取到tableview中
我正在将xml数据解析到表视图中,这里我正在检索问题和答案标记,问题发生在问题标记中仅显示了一个问题,其余问题未显示,这是web服务Iphone 未将整个xml数据获取到tableview中,iphone,xcode,uitableview,xml-parsing,Iphone,Xcode,Uitableview,Xml Parsing,我正在将xml数据解析到表视图中,这里我正在检索问题和答案标记,问题发生在问题标记中仅显示了一个问题,其余问题未显示,这是web服务 这是我写的代码 - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)a
这是我写的代码
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
currentTag = elementName;
if ([currentTag isEqualToString:@"question"])
{
model = [[ModelDataView alloc]init];
}
if([currentTag isEqualToString:@"answer"])
{
model_2=[[Model2 alloc]init];
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if([elementName isEqualToString:@"question"])
{
[dataControllerArray addObject:model];
}
if ([elementName isEqualToString:@"answer"])
{
[dataControllerArray2 addObject:model_2];
model_2 = nil;
}
currentTag = nil;
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if ([currentTag isEqualToString:@"result"])
{
model_2.result = string;
}
if ([currentTag isEqualToString:@"notes"])
{
model_2.notes = string;
}
if ([currentTag isEqualToString:@"question"])
{
model.question = string;
}
}
这是tableview方法的代码
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellIdentifier = @"cell";
static NSString *cellIdentifier2 = @"cell2";
UITableViewCell *cell;
if(tableView.tag==2)
{
cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier] autorelease];
}
Model2 *obj=[modelController.dataControllerArray2 objectAtIndex:indexPath.row];
NSString *res=obj.result;
cell.textLabel.text=res;
return cell;
}
else if(tableView.tag==1)
{
cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier2];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier2] autorelease];
}
ModelDataView *obj=[modelController.dataControllerArray objectAtIndex:indexPath.row];
NSString *res=obj.question;
UIWebView *_webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 190)];
[self.view addSubview:_webView];
CGRect frame = _webView.frame;
frame.size.height = 190;
_webView.frame = frame;
[_webView loadHTMLString:res baseURL:[NSURL URLWithString:res]];
return cell;
}
}
感谢您在完成解析后帮助我dataControllerArray中有什么?您的表的数据源方法是什么样子的?我只是分配dataControllerArray中没有任何内容tableview cellforRowAtIndexPath我将模型对象分配给该数组在我更透彻地阅读此内容之前,您确定您有
tableview:NumberOfRowInSection:
返回多个计数吗?您是否已将其调试为解析问题或数据源问题?我已检查它是否为解析问题