在所有ViewControllers上方添加视图

时间:2018-02-19 21:04:31

标签: ios swift uiview uiviewcontroller

我正在创建一个用户可以播放音乐的应用。我想在屏幕底部添加一个视图,显示正在播放的歌曲。就像Apple的音乐应用程序一样。

Example based off of the Apple Music app

除了详细视图控制器之外,我希望该视图位于我的所有应用ViewControllers上。我知道如何将视图添加到窗口中,只需...

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.

    let view = UIView()

    window?.makeKeyAndVisible()
    window?.insertSubview(view, at: 0)
    window?.bringSubview(toFront: view)

    return true
}

但是,我真的希望能够以编程方式设计视图,而不是在故事板中。因此,我需要UIViewController作为此视图。如何将UIViewController(让我们只说高度为70)添加到我的所有视图的底部?任何帮助表示赞赏!谢谢!

1 个答案:

答案 0 :(得分:1)

无需创建UIViewController,您可以使用Xib文件创建自定义UIView并将其加载为UIView,然后将其添加到窗口

let customView = (Bundle.main.loadNibNamed("hoverView", owner: self, options: nil))?[0] as! hoverView;

customView.frame = CGRect(x: 0, y: 0, width: w , height: h )

// then add it anywhere