Добавить объявление

Как вернуть старый стиль UITabBar в iPadOS 18+ (UIKit)

В iPadOS18 компания Apple добавила новый системный таббар в верхней части экрана, что может вызвать конфликты с кастомными таббарами в нижней части.

При желании, можно вернуть прежний стиль TabBar таким образом:


if #available(iOS 18.0, *), UIDevice.current.userInterfaceIdiom == .pad {
tabBarController?.traitOverrides.horizontalSizeClass = .compact
}

Важные нюансы:


  • Работает только на iPad (userInterfaceIdiom == .pad).

  • Требует iOS 18+ (проверка через @available).

Альтернатива для SwiftUI:


.toolbar(.hidden, for: .topBar)
01.06.2025 13 358