[ios] 如何改變Tab bar的高度

如果想要客制UITabBar的高度,
可以在UITabBarController的subclass裡實作以下程式碼

- (void)viewWillLayoutSubviews {
    
    CGRect tabFrame = self.tabBar.frame; //self.TabBar is IBOutlet of your TabBar
    tabFrame.size.height = 80; //自行調整想要的高度, 假設是80
    tabFrame.origin.y = self.view.frame.size.height - 80; //Y的高度必須要重設
    self.tabBar.frame = tabFrame; //把frame重新指回去

}

留言

  1. 謝謝你的文章 幫助到我。

    回覆刪除
    回覆
    1. 我也很開心幫到你:)

      刪除
    2. 糟糕了, 請問您有試過... 按鈕按了會變大,然後越變越大一事嘛...?
      SOS~~
      呵呵。

      刪除
    3. sorry... 是我加了一段程式碼的問題, 沒事了

      override func viewWillLayoutSubviews() {
      var tabFrame = self.tabBarTest.frame
      tabFrame.size.height = 80
      tabFrame.origin.y = self.view.frame.size.height - 80
      self.tabBarTest.frame = tabFrame
      if let item = self.tabBarTest.items {
      for i in item {
      i.imageInsets = UIEdgeInsetsMake(-10, -10, -10, -10)
      }
      } else {
      print("error = TabBar is nill")
      }
      }

      刪除
    4. 有解決就好, 越變越大也太可怕~

      刪除

張貼留言