Как добавить собственный UIView к плавающему UITabBarItem в iOS 26 Liquid Glass UITabBarIOS

Программируем под IOS
Ответить
Anonymous
 Как добавить собственный UIView к плавающему UITabBarItem в iOS 26 Liquid Glass UITabBar

Сообщение Anonymous »

Я хочу добавить собственный UIView, который может отображать GIF-файлы и изображения (AnimatedImageView UIView из библиотеки KingFisher) поверх плавающего UITabBarItem.
В iOS 26 введено новое поведение, при котором при прокрутке UITabBar сворачивается или сворачивается, а плавающий UITabBarItem также уменьшается в размерах.
Я могу чтобы добавить пользовательский UIView к плавающему UITabBarItem, когда UITabBar находится в обычном состоянии, но он исчезает, когда UITabBar сворачивается. И пользовательское представление снова возвращается, когда UITabBar возвращается в свое обычное состояние.
Я использую приведенный ниже код для доступа к свойству UIView плавающего UITabBarItem:

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

extension UIBarItem {
var view: UIView? {
return self.value(forKey: "view") as? UIView
}
}
Я добавил цвет фона к плавающему UIBarItem, используя приведенный ниже код

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

self.tabBar.items?[4].view?.backgroundColor = .systemRed
Работает, как и ожидалось, но исчезает, когда UITabBar сворачивается, что вы можете увидеть в видео ниже.
Изображение

При обновлении нового UITabBarAccessory свернуть, и я пытаюсь изменить цвет фона на желтый, но он никогда не появляется. Вы можете видеть, что желтый цвет появляется, когда UITabBar снова переходит в свое обычное состояние.
Я могу проверить с помощью отладчика представления, что внутренний UIView _UITabButton меняет свой адрес в памяти, но с помощью кода я не могу получить доступ к измененному UIView, даже если я копаю через частные дополнительные представления UITabBar.
Так может ли кто-нибудь дать мне подсказки о том, как я могу этого добиться? Как и другие приложения в App Store, которые делают это.

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

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

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

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

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

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