Анимация высоты панели вкладок в UITabBarController на iPadOS 13.1 - PullRequest
0 голосов
/ 27 сентября 2019

Похоже, что существует проблема с анимацией высоты и 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.

...