В iOS 26 он добавляет какой-то странный прозрачный фон (полагаю, что это эффект жидкого стекла) под панелью инструментов.
Я хочу сохранить тот же вид, что и раньше.
Смотрите пример кода ниже с прикрепленными изображениями:
Код: Выделить всё
let keyboardToolbar = UIToolbar(frame: CGRect(origin: .zero, size: CGSize(width: 100, height: 44.0)))
let doneBarButton = UIBarButtonItem()
doneBarButton.title = "Done"
if #available(iOS 26.0, *) {
doneBarButton.hidesSharedBackground = true
}
keyboardToolbar.items = [doneBarButton]
textField.inputAccessoryView = keyboardToolbar
let picker = UIPickerView()
picker.backgroundColor = .white
textField.inputView = picker

iOS 26:

Изменить:
Просто чтобы прояснить проблему. Похоже, что назначение пользовательского представления для inputAccessoryView И пользовательского представления для inputView заставляет систему добавлять это серое представление между ними.
Вот более простой пример, демонстрирующий такое поведение:
Код: Выделить всё
let inputAccessoryView = UIView(frame: CGRect(x: 0, y: 0, width: .zero, height: 70))
inputAccessoryView.backgroundColor = .red
textField.inputAccessoryView = inputAccessoryView
let inputView = UIView(frame: CGRect(x: 0, y: 0, width: .zero, height: 70))
inputView.backgroundColor = .blue
textField.inputView = inputView

Подробнее здесь: https://stackoverflow.com/questions/798 ... -in-ios-26
Мобильная версия