Popovers cannot be presented from a view which does not have a window

a111 picture a111 · Jul 31, 2010 · Viewed 27.4k times · Source

What does this error indicate:

"Popovers cannot be presented from a view which does not have a window."

Answer

Mobile Developer picture Mobile Developer · Aug 26, 2011

the thing that saved my life:

if (self.view.window != nil)
    [popoverController presentPopoverFromRect:CGRectMake(44, yCoord, 111, 111) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];

by adding if condition it doesn´t crash anymore. I don´t really get it because the presentPopoverFromRect function is ALWAYS called. There is no situation where window would be nil but anyway it did the trick.

edit: I have this code in viewDidAppear. Nevertheless in most cases it's enough to move presentPopoverFromRect to viewDidAppear or didMoveToWindow but in my case for some reason the if condition was necessary.