UIKit框架-高级控件Swift版本: 9.UINavigationController方法属性详解

UIKit框架-高级控件Swift版本: 9.UINavigationController方法属性详解,第1张

概述原文地址:http://www.cnblogs.com/iOSCain/p/4529340.html 1.UINavigationController常用属性 // 1.获取 UINavigationController 的顶部的视图控制器 var topViewController: UIViewController! { get }// 2.获取 UINavigationContr

原文地址:http://www.cnblogs.com/iOSCain/p/4529340.html

1.UINavigationController常用属性
// 1.获取 UINavigationController 的顶部的视图控制器    var topVIEwController: UIVIEwController! { get }// 2.获取 UINavigationController 可见的视图控制器    var visibleVIEwController: UIVIEwController! { get }// 3.设置 UINavigationController 的 vIEwControllers 对象    var vIEwControllers: [AnyObject]!// 4.设置 UINavigationController 的导航栏控制器是否隐藏,默认是 false    var navigationbarHIDden: Bool// 5.获取 UINavigationController 的导航栏控制器    var navigationbar: UINavigationbar { get }// 6.设置 UINavigationController 的内置工具栏是否可见(默认是 ture)    var toolbarHIDden: Bool// 7.获取 UINavigationController 的 toolbar    var toolbar: UIToolbar! { get }// 8.设置 UINavigationController 的代理对象    var delegate: UINavigationControllerDelegate?// 9.获取 UINavigationController 的手势识别顶部视图控制器    var interactivePopGestureRecognizer: UIGestureRecognizer! { get }// 10.设置 UINavigationController 当键盘出现时是否隐藏导航栏和工具栏    var hIDesbarsWhenKeyboardAppears: Bool// 11.设置 UINavigationController 是否使用向上滑动的手势隐藏导航栏和工具栏    var hIDesbarsOnSwipe: Bool// 12.获取 UINavigationController 用手势识别隐藏导航栏和工具栏    var barHIDeOnSwipeGestureRecognizer: UIPanGestureRecognizer { get }// 13.设置 UINavigationController 是否在垂直显示时隐藏    var hIDesbarsWhenVerticallyCompact: Bool// 14.设置 UINavigationController 是否使用点击手势来隐藏    var hIDesbarsOnTap: Bool// 15.获取 UINavigationController 隐藏时所使用的手势    var barHIDeOnTapGestureRecognizer: UITapGestureRecognizer { get }

2.UINavigationController常用的方法
// 1.该方法是用来设置 UINavigationController 跳转到指定的视图控制器,是否使用动画.    func pushVIEwController(vIEwController: UIVIEwController,animated: Bool)// 2.该方法是用来设置 UINavigationController Pop到其他视图控制器时是否使用动画,并且返回的类型必须是 UIVIEwController    func popVIEwControllerAnimated(animated: Bool) -> UIVIEwController?// 3.该方法是用来设置 UINavigationController Pop到指定的视图控制器,是否使用动画,返回的类型是任意类型    func popToVIEwController(vIEwController: UIVIEwController,animated: Bool) -> [AnyObject]?// 4.该方法是用来设置 UINavigationController Pop到根视图时是否使用动画,并且返回的类型必须是任意类型    func popToRootVIEwControllerAnimated(animated: Bool) -> [AnyObject]?// 5.该方法是用来替换之前于 UINavigationController 绑定的视图控制器,并且是否使用动画    func setVIEwControllers(vIEwControllers: [AnyObject]!,animated: Bool)// 6.该方法是用来设置 UINavigationController 的导航栏是否隐藏,是否使用动画    func setNavigationbarHIDden(hIDden: Bool,animated: Bool)// 7.该方法是用来设置 UINavigationController 的工具栏是否隐藏,是否使用动画    func setToolbarHIDden(hIDden: Bool,animated: Bool)// 8.该方法是用来设置 UINavigationController 显示指定的 VIEwController    func showVIEwController(vc: UIVIEwController,sender: AnyObject!)

3.UINavigationController代理方法
// 1.该方法使用来设置 UINavigationController 将要显示时所调用的方法    optional func navigationController(navigationController: UINavigationController,willShowVIEwController vIEwController: UIVIEwController,animated: Bool) // 2.该方法使用来设置 UINavigationController 完全显示时所调用的方法    optional func navigationController(navigationController:   4.代码演示  

首先我们要再AppDelegate.swift文件中实现

func application(application: UIApplication,dIDFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {        // OverrIDe point for customization after application launch.        self.window = UIWindow(frame: UIScreen.mainScreen().bounds)        self.window!.backgroundcolor = UIcolor.graycolor()        self.window!.makeKeyAndVisible()        let vIEwController = VIEwController()        let navigationController = UINavigationController(rootVIEwController: vIEwController)        self.window!.rootVIEwController = navigationController        return true    }

遵守代理协议

class VIEwController: UIVIEwController,UINavigationControllerDelegate { }

自定义UINavigationController

func myNavigationContronller() {        // 1.设置 UINavigationController 的 Title        self.Title = "UINavigationContronller"        // 2.设置 UIVavigationController 的按钮 Title,Style,Target,Action 等方法属性        let backbarbuttonItem = UIbarbuttonItem(Title: "返回",style: UIbarbuttonItemStyle.Plain,target: self,action: "backAction")        let nextbarbuttonItem = UIbarbuttonItem(Title: "下一页",21)">"nextAction")        // 3.设置 UINavigationItem        self.navigationItem.leftbarbuttonItem = backbarbuttonItem        self.navigationItem.rightbarbuttonItem = nextbarbuttonItem        // 4.获取 UINavigationController 的顶部的视图控制器        let topVIEw = self.navigationController?.topVIEwController        println(topVIEw)        // 5.获取 UINavigationController 可见的视图控制器        let visibleVIEw = self.navigationController?.visibleVIEwController        println(visibleVIEw)        // 6.设置 UINavigationController 的导航栏控制器        self.navigationController?.vIEwControllers        // 7.设置 UINavigationController 的导航栏控制器是否隐藏(默认是 false)        self.navigationController?.navigationbarHIDden = false        // 8.获取 UINavigationController 的导航栏控制器        let navigationbar = self.navigationController?.navigationbar        println(navigationbar)        // 9.设置 UINavigationController 的内置工具栏是否可见(默认是 ture)        self.navigationController?.toolbarHIDden = false        // 10.获取 UINavigationController 的 toolbar        let toolbar = self.navigationController?.toolbar        println(toolbar)        // 11.设置 UINavigationController 的代理对象        self.navigationController?.delegate = self        // 12.获取 UINavigationController 的手势识别顶部视图控制器        let pop = self.navigationController?.interactivePopGestureRecognizer        println(pop)        // 13.设置 UINavigationController 当键盘出现时是否隐藏导航栏和工具栏        self.navigationController!.hIDesbarsWhenKeyboardAppears = true        // 14.设置 UINavigationController 是否使用向上滑动的手势隐藏导航栏和工具栏        self.navigationController?.hIDesbarsOnSwipe = true        // 15.获取 UINavigationController 用手势识别隐藏导航栏和工具栏        let barHIDe = self.navigationController!.barHIDeOnSwipeGestureRecognizer        println(barHIDe)        // 16.设置 UINavigationController 是否在垂直显示时隐藏        self.navigationController!.hIDesbarsWhenVerticallyCompact = true        // 17.设置 UINavigationController 是否使用点击手势来隐藏        self.navigationController?.hIDesbarsOnTap = true        // 18.获取 UINavigationController 隐藏时所使用的手势        let barHIDeOnTap = self.navigationController!.barHIDeOnTapGestureRecognizer        println(barHIDeOnTap)        // 19.设置 UINavigationController 的导航栏是否隐藏,是否使用动画        self.navigationController?.setNavigationbarHIDden(true,animated: true)        // 20.设置 UINavigationController 的工具栏是否隐藏,255)">self.navigationController?.setToolbarHIDden(true)    }

自定义代理方法以及监听方法

// 1.该方法使用来设置 UINavigationController 将要显示时所调用的方法    func navigationController(navigationController: UINavigationController,willShowVIEwController vIEwController: UIVIEwController,animated: Bool) {        println("UINavigationController 将要显示")    }    // 2.该方法使用来设置 UINavigationController 完全显示时所调用的方法    func navigationController(navigationController: UINavigationController,dIDShowVIEwController vIEwController: UIVIEwController,21)">"UINavigationController 完全显示")    }    // 3.返回按钮的监听方法    func backAction() {        println("点击了返回")    }    // 4.下一页按钮的监听方法    func nextAction() {        println("点击了下一页")    }

5.最终效果

PS: UINavigationController 是继承与 UIVIEwController 的,所以里面的方法以及属性都是可以使用的.

总结

以上是内存溢出为你收集整理的UIKit框架-高级控件Swift版本: 9.UINavigationController方法/属性详解全部内容,希望文章能够帮你解决UIKit框架-高级控件Swift版本: 9.UINavigationController方法/属性详解所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1077527.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存