UITabBarAppearance with iOS27 Beta

iOS Version: iOS 27 Beta Xcode: Xcode27 Beta 2

I have a custom UITabBar subclass. The tab bar items are visible and selectable, and the selected state works, but the title color in the normal state is always rendered as white, even though I set a different normal title color. Simplified code

let normalColor = UIColor.gray
let selectedColor = UIColor.orange
let bgColor = UIColor.black
let font = UIFont.systemFont(ofSize: 10, weight: .semibold)

let appearance = UITabBarAppearance()
appearance.configureWithOpaqueBackground()
appearance.backgroundEffect = nil
appearance.backgroundColor = bgColor
appearance.shadowColor = .clear

let itemAppearance = appearance.stackedLayoutAppearance
itemAppearance.normal.titleTextAttributes = [
    .font: font,
    .foregroundColor: normalColor
]
itemAppearance.selected.titleTextAttributes = [
    .font: font,
    .foregroundColor: selectedColor
]
itemAppearance.normal.iconColor = normalColor
itemAppearance.selected.iconColor = selectedColor

appearance.stackedLayoutAppearance = itemAppearance
appearance.inlineLayoutAppearance = itemAppearance
appearance.compactInlineLayoutAppearance = itemAppearance

tabBar.standardAppearance = appearance
if #available(iOS 15.0, *) {
    tabBar.scrollEdgeAppearance = appearance
}

tabBar.backgroundColor = bgColor
tabBar.isTranslucent = false

The problem:

  • The selected title/icon color works.
  • The normal title color is ignored and stays white.

This happens after moving to the newer tab bar appearance behavior / Liquid Glass environment. Question: Is there any additional configuration required for UITabBarAppearance so that the normal UITabBarItem title color is respected? Could unselectedItemTintColor, tintColor, scrollEdgeAppearance, or Liquid Glass behavior override normal.titleTextAttributes?

UITabBarAppearance with iOS27 Beta
 
 
Q