https://github.com/trapper-/unballanced
I found an error in the project I'm working on, and pulled it into the simple example linked above. I think this is probably a UIKit error.
Basically, VC1 is inside the VC container, then VC2 is presented modally in the current context (therefore, it is also contained), then VC3 is presented in full screen mode. Now, when we push our way back to VC1, there will be no viewWillAppear for VC1. This also triggers a console warning.
Unbalanced calls to begin/end appearance transitions for <ViewController1: 0x7f9c5970afc0>
This is what you will see on the console.
Introducing
ViewController1 viewWillAppear
ViewController1 viewDidAppear
ViewController1 viewWillDisappear
ViewController2 viewWillAppear
ViewController2 viewDidAppear
ViewController1 viewDidDisappear
ViewController2 viewWillDisappear
ViewController3 viewWillAppear
ViewController3 viewDidAppear
ViewController2 viewDidDisappear
Rejecting
ViewController3 viewWillDisappear
ViewController2 viewWillAppear
ViewController2 viewDidAppear
ViewController3 viewDidDisappear
ViewController2 viewWillDisappear
Unbalanced calls to begin/end appearance transitions for <ViewController1: 0x7f9c5970afc0>.
ViewController1 viewDidAppear
ViewController2 viewDidDisappear
Instead, you can see missing messages ViewController1 viewWillAppearand Unbalanced calls to begin/end appearance transitions.
Any solution to this problem?
source