Your problem is the arrange you are doing.
You are using UINavigationController -> UIView -> UITabBarController, so UITabBarController is a subview of the UINavigationController. When you navigate, the view you are popping is FROM THE NAVIGATION CONTROLLER, so ALL its content (including the UITabBarController) will disappear.
You structure needs to be like this:
UITabBarController -> UINavigationController -> UIView, which means one UINavigationController per every tab that needs it.
For example, if you need to use push inside two tabs, the structure should be like this:
UITabBarController
| --> UINavigationController 1 --> UIView 1 --> (push segue) --> UIView 1B
| --> UINavigationController 2 --> UIView 2 --> (push segue) --> UIView 2B