如何在iOS 13中更改tabBar的框架?

当前,此代码:

Timer.scheduledTimer(withTimeInterval: 0.5,repeats: true) { _ in
            print(">>>>> self.tbc.tabar.frame: \(self.tabBarController?.tabBar.frame); \(self.tabBarController) before")
            self.tabBarController?.tabBar.frame = CGRect(x: 0.0,y: 812.0,width: 375.0,height: 83.0)
            print(">>>>> self.tbc.tabar.frame: \(self.tabBarController?.tabBar.frame); \(self.tabBarController) after")
        }

执行此操作

  

self.tbc.tabar.frame:可选((0.0,729.0,375.0,83.0));可选(ApplicationViewController:0x11600c600)之前

     

self.tbc.tabar.frame:可选((0.0,812.0,375.0,83.0));

之后是可选的(ApplicationViewController:0x11600c600)      

self.tbc.tabar.frame:可选((0.0,729.0,375.0,83.0));可选(ApplicationViewController:0x11600c600)之前

     

self.tbc.tabar.frame:可选((0.0,812.0,375.0,83.0));

之后是可选的(ApplicationViewController:0x11600c600)

它在iOS 12上正常工作

  

self.tbc.tabar.frame:可选((0.0,812.0,375.0,83.0));

前的可选(ApplicationViewController:0x7f86e7850000)      

self.tbc.tabar.frame:可选((0.0,812.0,375.0,83.0));

之后是可选的(ApplicationViewController:0x7f86e7850000)

因此,我无法更改tabBar框架!如何解决此问题?

SJ1988GG 回答:如何在iOS 13中更改tabBar的框架?

看来,对于iOS13,我们应该使用过渡效果而不是框架:

let transform = CGAffineTransform(translationX: 0,y: offsetY)
tabBar.transform = transform

为我提供了帮助。

框架不再有用。

本文链接:https://www.f2er.com/3021173.html

大家都在问