IOS 26: HidesSharedBackground работает для leftBarButtonItem, но не для backBarButtonItemIOS

Программируем под IOS
Ответить
Anonymous
 IOS 26: HidesSharedBackground работает для leftBarButtonItem, но не для backBarButtonItem

Сообщение Anonymous »

В iOS 26 Apple представила новый эффект тени/фона вокруг кнопок панели навигации. Свойство HidesSharedBackground успешно удаляет этот эффект из обычных элементов кнопок панели, но не работает при применении к backBarButtonItem.
Что я пробовал:

Код: Выделить всё

let leftButton = UIBarButtonItem(title: "Cancel", style: .plain, target: self, action: #selector(cancelTapped))
if #available(iOS 26.0, \*) {
leftButton.hidesSharedBackground = true  // ✅ Successfully removes shadow
}
navigationItem.leftBarButtonItem = leftButton

// This DOES NOT WORK - shadow remains on back button
let backButton = UIBarButtonItem(title: "Back", style: .plain, target: nil, action: nil)
if #available(iOS 26.0, \*) {
backButton.hidesSharedBackground = true  // ❌ No effect - shadow still appears
}
navigationItem.backBarButtonItem = backButton
Ожидаемое поведение:
Я ожидал, что с помощью displaySharedBackground = true будет последовательно удаляться эффект тени/фона как из элементов кнопок обычной панели, так и из элементов кнопок задней панели.
Фактическое поведение:

Код: Выделить всё

hidesSharedBackground
корректно работает для leftBarButtonItem и rightBarButtonItem

Код: Выделить всё

hidesSharedBackground
не влияет, если установлено на backBarButtonItem
Кнопка «Назад» продолжает отображать эффект тени/фона в iOS 26.
Дополнительный контекст:
Мне известен ключ UIDesignRequiresCompatibility Info.plist, но мне нужно программное решение
Ищу способ удалить тень специально с кнопок «Назад», не затрагивая другие элементы пользовательского интерфейса.
/>Это непоследовательное поведение в API iOS 26.
Вопрос:
Это ошибка в iOS 26 или существует другой подход для удаления эффекта тени специально для элементов кнопок задней панели?

Подробнее здесь: https://stackoverflow.com/questions/797 ... backbarbut
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»