The issue had to do with IBOutlets within UIViewControllers. I resolved my issue by adding this method:
Code:
-(void)setView:(UIView*)aView {
if (!aView){
//set outlets to nil here
self.scrollView = nil;
self.joinButton = nil;
self.activityProgress = nil;
self.numPlayersLabel = nil;
self.numPlayersText = nil;
self.timeView = nil;
self.timeLabel = nil;
}
[super setView:aView];
}
And then in your dealloc method, release IBOutlets and set to nil.
Code:
- (void)dealloc {
[scrollView release], scrollView = nil;
[joinButton release], joinButton = nil;
[activityProgress release], activityProgress = nil;
[numPlayersLabel release], numPlayersLabel = nil;
[numPlayersText release], numPlayersText = nil;
[timeView release], timeView = nil;
[timeLabel release], timeLabel = nil;
[super dealloc];
}
I think I also may have had an IBOutlet instance that I didn't actually declare as an outlet in my header file.
Hope that helps.