0
votes

I'm new to the NSXMLParser, so I decided to take this tutorial: http://www.xcode-tutorials.com/parsing-xml-files/ and it was great. But in my app I used parser not in AppDelegate, but in other ViewController. I changed initialization to this:

-(XMLParser *)initXMLParser {
    [super  init];

    viewController = (ViewController *)[[UIApplication sharedApplication] delegate];

    return self;
}

The parser itself works well but it doesn't add any objects to the array in view controller in which the objects should be added. Can anyone help?

1

1 Answers

0
votes

Your code call still your app delegate

Try with this kind of code

@interface XMLParser : NSObject {
    NSMutableString *currentElementValue;
    id<NSXMLPArserDelegate> delegate;
    Book *aBook;
}
-(XMLParser *)initXMLParserWithDelegate:(id<NSXMLPArserDelegate>) delegate;
@end;


-(XMLParser *)initXMLParserWithDelegate:(id<NSXMLPArserDelegate>) _delegate {
    self = [super  init];
    if(self) {
        delegate = _delegate;
    }
    return self;
}

And set the delegate with self in your constructor