我有这个需要设置 UILabel 文本的 XML 解析器类。由于某种原因,当我从 XML 解析类调用我的外部(我的外部自定义方法位于 ViewController 中)自定义方法时,我无法更改标签文本。像 NSLogging 或 UIAlert 这样的其他任何东西都可以。
我尝试使用的代码:
XML Parsing class
-(void) parser:(NSXMLParser *) parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{
if([elementName isEqualToString:@"names"]){
NSLog(@"Found names body");
}
else if ([elementName isEqualToString:@"user"]){
array = [attributeDict objectForKey:@"nameofuser"];
ViewController * main = [[ViewController alloc] init];
[main outputToLabel:array];
}
NSLog(@"Reading value: %@", elementName);
}
这是我的 ViewController 自定义方法:
-(void) outputToLabel:(NSArray *) dict{
NSLog(@"seting %@ srcds", dict);
// XML stuff here \/
NSLog(@"%@", dict);
// /\
this.text = @"Complete";
}
它 NSLogs 正确地输出值和所有内容......我只是无法设置标签文本。我可以在 viewDidLoad 中使用该代码,它工作正常。有任何想法吗?