从视图控制器动态加载tabItem时,TabBar未显示[更多...]图标

时间:2017-04-17 08:48:32

标签: ios swift xcode8

这里我动态添加标签项,但只显示4项(更多...标签项缺失)。我已经阅读了很多文章和stackOverFlow帖子,但未能找到任何合适的解决方案。到目前为止,这是我的代码......

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    loadDynamicItems()
}

func loadDynamicItems()  {

    let storyBoard = UIStoryboard(name: "Main", bundle: Bundle.main)
    var controllerArray = [UIViewController]()

    for i in 1...8 {
        let controller = storyBoard.instantiateViewController(withIdentifier: "newsCollection") as! NewsVC
        let tabIcon = UIImage.fontAwesomeIcon(name: .addressBook,
                                              textColor: UIColor.black,
                                              size: CGSize(width: 30, height: 30))

        controller.tabBarItem = UITabBarItem(title: "item \(i)", image: tabIcon, tag: i)
        controllerArray.append(controller)
    }

    self.setViewControllers(controllerArray, animated: true)
}

但结果似乎是IMAGE
为什么它只显示4项!

它应该加载[More ...]按钮作为第五个孩子,我可以从那里访问其余的项目。 但为什么不存在呢??

1 个答案:

答案 0 :(得分:0)

使用Storyboard时,为了向应用程序添加TabBarController,您需要拖放UITabBarViewController而不是普通的UIViewController。否则,某些属性未正确派生(如TabBar - 请参阅我的屏幕截图)。

只需确保删除自动创建的TabBar项目!

UITabBarViewController from Storyboard