1
我有这个需要设置UILabel文本的XML解析器类。由于某种原因,当我从XML解析类调用我的外部(我的外部自定义方法位于ViewController中)自定义方法时,我不能更改标签文本。任何其他类似NSLogging工作或UIAlert工程。
代码即时试图做到这一点的:
XML解析类设置UILabel文本不工作?
-(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中使用该代码,它工作正常。有任何想法吗?
那么....我该如何使它为我的UILabel设置文本?谢谢! –
@JamerTheProgrammer - 考虑一下。你在那边有一个物体,就是屏幕上显示的物体。在这里创建一个新对象并不好。你必须以某种方式获得对象的地址 - 将其作为参数传递,作为全局变量访问它,等等。在这里搜索“如何在视图控制器之间传递参数”以及类似的问题,你会发现这是一个非常普遍(和无聊)的问题(甚至是一个熟练的程序员也不需要问)。 –
好的。感谢答案和患者。 –