更改UIITabbar宽度ios13快速

穆罕默德·耶加内

在ios13之前,我有这段代码可以很好地工作:

override func viewWillLayoutSubviews() {
     super.viewWillLayoutSubviews()

     var newFrame = tabBar.frame
     newFrame.size.width = self.view.bounds.width - 420
     tabBar.frame = newFrame

 }

但现在在运行ipad的ios13上它什么也不做。我也曾尝试使用extention和创建自己的CustomTabBar并从sizeThatFits()方法更改宽度,但是这种方法ONLY CHANGES THE HEIGHT在尝试更改标签栏的宽度时无济于事

Loxx

改成这个

override func viewDidLayoutSubviews() {
     super.viewDidLayoutSubviews()

     var newFrame = tabBar.frame
     newFrame.size.width = self.view.bounds.width - 420
     tabBar.frame = newFrame

 }

像这样在Objective-C中工作,只需对其进行测试:

- (void)viewDidLayoutSubviews {
  [super viewDidLayoutSubviews];

  CGRect newFrame = self.tabBar.frame;
  newFrame.size.width -= 200;
  self.tabBar.frame = newFrame;

}

应该在Swift中也能正常工作,尽管我不知道为什么在世界上您会一直想要这样做,而且除了向左移动标签栏按钮之外,它什么也不会做

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章