Ребята, обязательно ли делать Navigation Controller в приложении, где основная информация будет состоять в Tab Bar Controller и на каждом View? И как подписать сверху каждый View, чтобы пользователь понимал на какой вкладке он находится?
Navigation Controller
RexHunt
#2
Необязательно. У меня так же сделано через таб бар, только сами контроллеры для таб бара, я уже оборачиваю в навигейшен и ставлю в таб бар.
private func embedInNavigation(_ controller: UIViewController) -> UINavigationController {
let navigation = UINavigationController.init(rootViewController: controller)
navigation.navigationBar.isTranslucent = false
return navigation
}
var vc1: UINavigationController!
var vc2: UINavigationController!
var vc3: UINavigationController!
var vc4: UINavigationController!
func viewDidLoad() {
vc1 = embedInNavigation(ViewController1)
vc2 = embedInNavigation(ViewController2)
vc3 = embedInNavigation(ViewController3)
vc4 = embedInNavigation(ViewController4)
setViewControllers([vc1, vc2, vc3, vc4], animated: false)
}
Дальше уже, все последующие VC, которые будут появляться из таб бара, будут иметь navigation bar.
RexHunt
#8
что-то у вас не то. он становится сам автоматом и никуда не заползает. и менять размеры ему в IB нельзя.
RexHunt
#10
значит я уже начал тупить под конец дня.
ставьте ему верхний констрейнт не к rootView, а к safeArea = 0
RexHunt
#12
В секции Document Outline (слева, где структура элементов показана), когда раскрываете ваш ViewController, у него идет сперва View (это будет rootView), внутри этого View будет идти SafeArea, соответственно дальше уже будут идти ваши элементы.