Я работаю над приложением, основным видом которого является UITabViewController. Под UITabViewController входят три UIViewController и один UITableViewController. Под одним из UIViewControllers находится UIView и объект NSObject, который соответствует NSXMLParserDelegate. Вот схема структуры на высоком уровне:
AppDelegate: UIResponder
UIViewController1 & xib
UIViewController2 & xib
UIViewController3 & xib
UIView (CG звонки здесь)
NSXMLParser
UITableViewController & xib
XIB UIViewController имеет выход к UIView. Экземпляр UIView выделяется и init'd в UIViewController. Затем UIView выделяет и инициализирует NSXMLParser, загружает данные, выполняет рисование и выполняет [self setNeedsDisplay]. Приложение компилируется без ошибок, и я убедился, что данные XML загружаются и анализируются правильно.
Проблема в том, что drawRect: в UIView вызывается, когда UIView инициализируется, но больше никогда. При вызове drawRect: данные еще не загружены, поэтому ничего не рисуется. Я убедился, что вызывается [self setNeedsDisplay], но drawRect: больше никогда не вызывается.
У кого-нибудь есть идеи, почему drawRect: вызывается только один раз? Спасибо.