设置UILabel文本不起作用?

时间:2013-01-22 22:59:29

标签: ios uilabel

我有这个XML解析器类,需要设置UILabel的文本。出于某种原因,当我从XML解析类调用我的外部(我的外部自定义方法位于ViewController中)自定义方法时,我无法更改标签文本。其他任何像NSLogging工作或UIAlert工作 代码我试图这样做:
XML解析类

-(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";
}

它NS正确地记录了值和一切...我只是不能设置标签文本。我可以在viewDidLoad中使用该代码,它工作正常。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

    ViewController * main = [[ViewController alloc] init];
    [main outputToLabel:array];

您正在创建ViewController的新实例并在其中设置标签。 ViewController的“真实”实例不受此操作的影响。