ios - UITabBar 屏幕顶部

标签 ios swift layout uitabbarcontroller

我需要将标签栏放在屏幕顶部。

我试过了,我做到了,这是代码:

  override func viewDidLoad() {
        self.tabBar.frame = CGRectMake(0, 90, self.view.bounds.size.width, self.view.bounds.size.height);
        self.tabBar.autoresizingMask = UIViewAutoresizing.FlexibleWidth
  }

问题出在我转动设备屏幕时。

我应该重新生成布局并以这种方式更改:

self.tabBar.frame = CGRectMake(0, 80, self.view.bounds.size.width, self.view.bounds.size.height);

我怎样才能在每次转动屏幕时更改它?

编辑:

新代码:

  override func viewDidLayoutSubviews()
  {
        //check tabBar not null
        if (self.tabBar != nil)
        {
            //make changes in frame here according to orientation if any
            self.tabBar.frame = CGRect(x: 00, y: 20, width:self.view.bounds.size.width, height: 49)
        }
  }
  override func viewDidLoad() 
  {
     //Make changes in frame according to your requirement
    self.tabBar.frame = CGRectMake(0, 20, self.view.bounds.size.width,49);
    //resizing here
    self.tabBar.autoresizingMask = UIViewAutoresizing.FlexibleTopMargin;UIViewAutoresizing.FlexibleLeftMargin;UIViewAutoresizing.FlexibleWidth;UIViewAutoresizing.FlexibleRightMargin;
  }

最佳答案

viewDidLoad中定义UITabBar

override func viewDidLoad() 
{
    //Make changes in frame according to your requirement
    self.tabBar.frame = CGRectMake(0, 20, self.view.bounds.size.width,49);
    //resizing here
    self.tabBar.autoresizingMask = UIViewAutoresizing.FlexibleTopMargin;UIViewAutoresizing.FlexibleLeftMargin;UIViewAutoresizing.FlexibleWidth;UIViewAutoresizing.FlexibleRightMargin;
}

添加下面的方法 viewDidLayoutSubviews

override func viewDidLayoutSubviews()
{
    //check tabBar not null
    if (self.tabBar != nil)
    {
        //make changes in frame here according to orientation if any
        self.tabBar.frame = CGRect(x: 00, y: 20, width:self.view.bounds.size.width, height: 49)
    }
}

关于ios - UITabBar 屏幕顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28406938/

相关文章:

flutter - 为什么我的 flutter 应用程序中的 FAB 大小很大?

HTML/CSS 布局问题

html - 整个页面上没有垂直滚动条的标题、导航、容器布局

ios - 在 Objective C 中使用代理同时快速发送请求

ios - UIView 使用约束自动布局居中和调整大小

ios - 没有弹跳的 Sprite Kit 碰撞

ios - 具有部分匹配值的 Firebase iOS 查询数据

ios - 无法在 UIWebView 中播放 Youtube 视频(iOS、Swift)

ios - Swift 循环绘制多条路径

ios - 阴影仅在左侧和上侧 mask 边界。是什么原因造成的?