Вы имеете в виду addSubview:navController.view
? Я не думал, что вы могли бы рассматривать контроллеры представления как представления.
В общем, вы должны быть осторожны при использовании UIViewController вне классов, управляемых фреймворком. UIKit автоматически обрабатывает такие вещи, как viewWillAppear / autorotation для контроллеров представления, о которых он знает, но он не знает о VC, чьи представления вы случайно добавляете как подпредставления.
РЕДАКТИРОВАТЬ: Если все, что вам нужно, это чтобы он казался прозрачным, вы можете использовать что-то вроде
UIGraphicsBeginImageContextWithOptions(tabBarController.view.size, 0, 0);
[tabBarController.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
, а затем используйте img в качестве фона для просмотра. Он не будет анимировать материал в фоновом режиме, но при условии, что вам это не нужно, он на намного быстрее, чем множество прозрачных видов, накладываемых друг на друга.