I am working on an app where a UIAlert pops up the first time the user begins using it to ask if they want to use their current location. This happens within the main contro
Always call [super viewDidLoad]; before you do anything else. That is also explaining why the delay works.
[super viewDidLoad];
Hope I'm right. :)