I'm initializing a view controller and pushing it like so

```
MyViewController *vc = [[MyViewController alloc] init];
[self.navigationController pushViewController:vc animated:YES]

```

However, the app basically freezes after pushing. If I don't push, it doesn't transition to the new view, but I can continue using the app (it doesn't freeze).

Also, if I add a view controller to my storyboard of class MyViewController and give it a storyboard Id, I can initialize the view controller and push it just fine with the storyboard `instantiateViewControllerWithIdentifier` method.

Anybody have any idea why this is happening?

**Edit**

Using the technique that Zaph recommended in his comment, I can see that the code is stuck iterating the new view controller's `viewWillLayoutSubviews` method over and over. Not sure why this is happening.