Похоже, что существует проблема с анимацией высоты и Y панели вкладок в UITabBarController специально для iPadOS 13. В основном я пытаюсь анимировать скрытие панели вкладок.Отлично работает на iOS.Даже если мы создадим его с Xcode 10, он будет работать нормально.Просто когда мы компилируем его с помощью Xcode 11 и запускаем его на iPadOS 13, это не работает.
Я добавил кнопку.При нажатии он будет анимировать высоту панели вкладок от 100 до 200 пикселей.
import Foundation
import UIKit
class MyTabBarController : UITabBarController {
let button = UIButton(type: .roundedRect)
override func viewDidLoad() {
super.viewDidLoad()
button.backgroundColor = UIColor.red
button.frame = CGRect(x: 100, y: 100, width: 100, height: 100)
button.addTarget(self, action: #selector(tapped), for: .touchUpInside)
self.view.addSubview(button)
}
@objc func tapped() {
UIView.animate(withDuration: 1, animations: {
if self.tabBar.frame.size.height > 100 {
self.tabBar.frame.origin.y = self.view.frame.size.height - 100
self.tabBar.frame.size.height = 100
} else {
self.tabBar.frame.origin.y = self.view.frame.size.height - 200
self.tabBar.frame.size.height = 200
}
})
}
}
Приведенный выше код должен анимировать высоту панели вкладок от 100 до 200 пикселей.При каждом нажатии кнопки панель вкладок анимируется снизу вверх и всегда заканчивается высотой 65.