我向textfields
输入了一些文本,以显示在labels
某些肥皂字段上。在“显示多少个电台”中输入2时textfield
<stationName>ABC</stationName>
<stationName>XYZ</stationName>
我想在
labels
上显示这些输出。我有2个标签。
Label1
和Label2
。如果工作站名称的计数大于2,则
label1
等于工作站名称1,label2
等于工作站名称2如何查看电台名称的计数并在2个标签上显示?
此代码仅在标签上显示一个电台。
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
if ( [elementName isEqualToString:@"stationName"] ) {
if (!retornoSOAP)
{
retornoSOAP = [[NSMutableString alloc] init];
}
teveRetorno = YES;
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if (teveRetorno)
{
[retornoSOAP appendString:string];
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if ( [elementName isEqualToString:@"stationName"] )
{
Label1.text = retornoSOAP;
retornoSOAP = nil;
teveRetorno = NO;
NSLog(@"LOG Message = %@", retornoSOAP);
}
}
最佳答案
您不保存结果以供演示吗?那可能是您可以使用array.count查找的地方。
否则,您可以通过计数器扩展parse:didStartElement
方法
int numberOfStations = 0;
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
if ( [elementName isEqualToString:@"stationName"] )
{
numberOfStations++;
if (!retornoSOAP)
{
retornoSOAP = [[NSMutableString alloc] init];
}
teveRetorno = YES;
}
}