iOS: Warning “attempt to present ViewController whose view is not in the window hierarchy”

You are trying to present a view controller from the rootViewController. In your case I think the rootViewController is not the current ViewController. Either you presented or pushed a new UIViewController on top of it. You should present a view controller from the top most view controller itself.

You need to change:

UIViewController *vc = self.view.window.rootViewController;
[vc presentViewController: activityController animated: YES completion:nil];

to:

[self presentViewController: activityController animated: YES completion:nil];

Leave a Comment