Как оформить TabBar через код?

Оформление TabBar в iOS можно осуществить как через Interface Builder, так и через код. В этом ответе я расскажу о том, как оформить TabBar через код.

Для начала вам понадобится создать экземпляр класса UITabBarController, который будет являться контейнером для ваших вкладок. Далее, создайте экземпляры классов UIViewController, каждый из которых будет представлять одну вкладку вашего приложения. Установите свои контроллеры в свойство viewControllers вашего UITabBarController:

let viewController1 = UIViewController()
viewController1.tabBarItem = UITabBarItem(title: "Вкладка 1", image: UIImage(named: "image1"), tag: 0)

let viewController2 = UIViewController()
viewController2.tabBarItem = UITabBarItem(title: "Вкладка 2", image: UIImage(named: "image2"), tag: 1)

let viewController3 = UIViewController()
viewController3.tabBarItem = UITabBarItem(title: "Вкладка 3", image: UIImage(named: "image3"), tag: 2)

let tabBarController = UITabBarController()
tabBarController.viewControllers = [viewController1, viewController2, viewController3]

Вы можете использовать иконки для каждой вкладки, указав соответствующее изображение в свойстве image объекта UITabBarItem. Также вы можете добавить заголовки вкладок, указав значение свойства title.

После создания и настройки вашего UITabBarController, вы должны добавить его view к иерархии представлений вашего приложения:

window.rootViewController = tabBarController

Обратите внимание, что UITabBarController должен быть корневым контроллером вашего приложения. Если вы хотите добавить дополнительный навигационный контроллер для каждой вкладки, вам нужно будет создать экземпляры UINavigationController, которые будут содержать ваши контроллеры внутри себя.

Например, если вы хотите добавить навигационный контроллер к первой вкладке, выполните следующий код:

let navigationController = UINavigationController(rootViewController: viewController1)
tabBarController.viewControllers = [navigationController, viewController2, viewController3]

Теперь первая вкладка будет содержать навигационную панель, где вы сможете показывать дополнительные контроллеры путем перехода по стеку представлений.

Итак, вы только что узнали, как оформить TabBar через код в iOS, создав экземпляры UITabBarController и связав их с вашими контроллерами, а затем добавив их в иерархию представлений вашего приложения.