如何以编程方式在我的标签栏控制器下添加UIView?

时间:2017-11-08 17:02:04

标签: ios swift swift3 tabbar adview

我试图看看我如何在我的UITabBarController下添加一个UIView,这样我就可以在我的应用程序中添加广告了,我似乎无法找出任何方法将我的UIView限制在标签栏的底部。这可能吗?

编辑:标签栏的底部是指标签栏下方

2 个答案:

答案 0 :(得分:5)

试试这个添加请参阅:

enter image description here

按照以下步骤实现目标:

  1. 在故事板的根目录中添加UIViewController
  2. Container View
  3. 中添加UIViewController
  4. AdView
  5. 下方添加Container view
  6. 使用UITabbarController
  7. 嵌入Container view

答案 1 :(得分:1)

我能够在我的UITabBarController中创建一个UIView

lazy var bannerAd: UIView = {
    let view = UIView()
    view.translatesAutoresizingMaskIntoConstraints = false
    view.backgroundColor = .black
    return view
}()

然后将它固定在底部,如下所示:

  view.addSubview(bannerAd)

    bannerAd.heightAnchor.constraint(equalToConstant: 44).isActive = true
    bannerAd.bottomAnchor.constraint(equalTo: self.view.bottomAnchor).isActive = true
    bannerAd.widthAnchor.constraint(equalTo: self.view.widthAnchor).isActive = true

然后向上移动Tab Bar我这样做了:

override func viewWillLayoutSubviews() {
        if !didStyleTabBar {
            self.tabBar.invalidateIntrinsicContentSize()
            var tabFrame = self.tabBar.frame

            tabFrame.size.height = tabBarHeight
            tabFrame.origin.y = tabFrame.origin.y - 44
            self.tabBar.frame = tabFrame

            didStyleTabBar = true
        }
    }