UIkit框架之uUInavigationController
1.继承链:UIviewcontroller:uiresponder:NSObject
2.如果你想使用一些动画转换,可以遵守 UINavigationControllerDelegate
3.创建导航控制器:
(1)- (instancetype)initWithRootViewController:(UIViewController *)rootViewController
:使用系统默认的导航栏和工具栏,通过一个根视图创建导航控制器
(2)- (instancetype)initWithNavigationBarClass:(Class)navigationBarClass
toolbarClass:(Class)toolbarClass
:通过一个自定义的导航栏和工具栏创建导航控制器
4.访问导航栈的item
(1)@property(nonatomic, readonly, strong) UIViewController*topViewController :返回栈顶的controller
(2)@property(nonatomic, readonly, strong) UIViewController*visibleViewController :返回显示的controller
(3)@property(nonatomic, copy) NSArray<__kindof UIViewController *> *viewControllers :返回堆栈中所有的controller
(4)- (void)setViewControllers:(NSArray<UIViewController *> *)viewControllers
animated:(BOOL)animated
:设置管理的视图控制器
5.推出和压进栈item
(1)- (void)pushViewController:(UIViewController *)viewController
animated:(BOOL)animated
:压入新的视图控制器
(2)- (UIViewController *)popViewControllerAnimated:(BOOL)animated
:弹出一个视图控制器 返回的是栈顶的controller
(3)- (NSArray<__kindofUIViewController *> *)popToRootViewControllerAnimated:(BOOL)animated
:rootviewcontroller将会成为栈顶视图,返回所有的视图
(4)- (NSArray<__kindofUIViewController *> *)popToViewController:(UIViewController *)viewController
animated:(BOOL)animated
:弹出到某个视图控制器 返回所有弹出的controller
(5)@property(nonatomic, readonly) UIGestureRecognizer*interactivePopGestureRecognizer :iOS7之后,在导航中右划会进行pop操作,设置这个的enable可以控制设置手势是否失效
6.配置导航条
(1)@property(nonatomic, readonly) UINavigationBar*navigationBar :导航栏对象,只读属性
(2)- (void)setNavigationBarHidden:(BOOL)hidden
animated:(BOOL)animated
:设置隐藏导航栏
7.配置自定义的工具栏
(1)@property(nonatomic, readonly) UIToolbar*toolbar :获取工具栏对象
(2)- (void)setToolbarHidden:(BOOL)hidden
animated:(BOOL)animated
:隐藏工具栏
(3)@property(nonatomic, getter=isToolbarHidden) BOOL toolbarHidden :隐藏工具栏
8.隐藏导航条
(1)@property(nonatomic, readwrite, assign) BOOL hidesBarsOnTap :敲击屏幕可以隐藏与显示导航栏
(2)@property(nonatomic, readwrite, assign) BOOL hidesBarsOnSwipe :屏幕滑动的时候隐藏导航栏,常用于tableView,上滑隐藏导航栏,下滑显示,带动画效果
(3)@property(nonatomic, readwrite, assign) BOOL hidesBarsWhenVerticallyCompact :横屏的时候隐藏导航栏
(4)@property(nonatomic, readwrite, assign) BOOL hidesBarsWhenKeyboardAppears :当键盘出现的时候隐藏导航条
(5)@property(nonatomic, getter=isNavigationBarHidden) BOOL navigationBarHidden :隐藏导航条
(6)@property(nonatomic, readonly, assign) UITapGestureRecognizer*barHideOnTapGestureRecognizer :获取敲击屏幕的手势
(7)@property(nonatomic, readonly, strong) UIPanGestureRecognizer*barHideOnSwipeGestureRecognizer :获取滑动屏幕的手势
(8)@property(nonatomic, weak) id< UINavigationControllerDelegate> delegate :设置委托
9.显示viewcontroller的动作方法
(1)- (void)showViewController:(UIViewController *)vc
sender:(id)sender
:这个方法是为了iOS方法的命名统一,在导航中,其作用和push一样
UIkit框架之uUInavigationController的更多相关文章
- Swift - 重写UIKit框架类的init初始化方法(以UITabBarController为例)
原来写了篇文章讲UITabBarController的用法,当时是从UIViewController跳转到UITabBarController页面,代码如下: 1 self.presentViewCo ...
- UIKit框架
在今后的应用程序构建中,会陆续使用各式各样的控件,因此UIKit框架的引入是必不可少的! 一.简介 UIKitk框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面接口.应 ...
- iOS学习32之UIKit框架-可视化编程-XIB
1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...
- 基础框架Fundation和UIkit框架的定义和使用
Foundation 框架为所有应用程序提供基本的系统服务 您的应用程序以及 UIKit 和其他框架,都建立在 Foundation 框架的基础结构之上.Foundation 框架提供许多基本的对象类 ...
- iOS开发概述UIkit动力学,讲述UIKit的Dynamic特性,UIkit动力学是UIkit框架中模拟真实世界的一些特性。
转发:http://my.oschina.net/u/1378445/blog/335014 iOS UIKit动力学 Dynamics UIAttachmentBehavior 实现iMessage ...
- iOS开发UIKit框架-可视化编程-XIB
1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...
- 79、iOS 的Cocoa框架、Foundation框架以及UIKit框架
Cocoa框架是iOS应用程序的基础 1. Cocoa是什么? Cocoa是 OS X和ios 操作系统的程序的运行环境. 是什么因素使一个程序成为Cocoa程序呢?不是编程语言,因为在Cocoa开发 ...
- UIKit 框架之UIView二
下面这些都是UIView一些基本的东西,具体的可以参考UIKit 框架之UIView一博客 一.自定义一个View // // MyView.m // UIView // // Created by ...
- UIKit 框架之Bar、Controller
UIKit框架中有各种Bar,UITabBar.UINavigationBar.UIToolbar.Bar对应的就有一些Item,tabBarItem.navigationItem.toolbarIt ...
随机推荐
- cf 700 B Connecting Universities
题意:现在给以一棵$n$个结点的树,并给你$2k$个结点,现在要求你把这些节点互相配对,使得互相配对的节点之间的距离(路径上经过边的数目)之和最大.数据范围$1 \leq n \leq 200000, ...
- 【SSO单点系列】(2):CAS4.0 登录页的个性化定制
上一篇 [SSO单点系列](1):CAS环境的搭建介绍了CAS最简单环境的搭建,以及一个例子用来讲解CAS的一个最基础的用法. 今天主要是介绍如何对CAS登录页进行个性化定制. 一.开始 下图是 ...
- linux centos 6.5 运行MySQL Workbench 6.0找不到 libmysqlclient.so.16和libmysqlclient_r.so.16
找到已安装mysql/lib目录下有类似文件: -rw-r--r-- root root 12月 : libmysqlclient.a lrwxrwxrwx root root 12月 : libmy ...
- 如何使用R语言解决可恶的脏数据
转自:http://shujuren.org/article/45.html 在数据分析过程中最头疼的应该是如何应付脏数据,脏数据的存在将会对后期的建模.挖掘等工作造成严重的错误,所以必须谨慎的处理那 ...
- [问题2014A04] 解答
[问题2014A04] 解答 (1) 由条件可得 \(AB+BA=0\), 即 \(AB=-BA\), 因此 \[AB=A^2B=A(AB)=A(-BA)=-(AB)A=-(-BA)A=BA^2=B ...
- [问题2014A05] 复旦高等代数 I(14级)每周一题(第七教学周)
[问题2014A05] (1) 设 \(x_1,x_2\cdots,x_n,x\) 都是未定元, \(s_k=x_1^k+x_2^k+\cdots+x_n^k\,(k\geq 1)\), \(s_0 ...
- java内部类以及匿名类
内部类 一个类内部定义的类称为内部类. 内部类允许把逻辑相关的类组织在一起,并控制内部代码的可视性. 内部类与外部类的结构层次如下. 顶层类:最外层的类 外部类:内部类所在的类 内部类:类内部定义的类 ...
- linux 双网卡实现
linux实现双网卡,在虚拟机中创建一个新网卡,NAT方式连接,其中eth0设置为连接外网,目前eth0为自动分配状态,所以将代码注释掉了,eth1设置为连接内网.
- Linux命令行与命令
Linux命令行与命令 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! Linux的命令是很重要的工具,也往往是初学者最大的瓶 ...
- hdu2896病毒侵袭(ac自动机)
链接 ac自动机的模板题 说2个注意的地方 一是题目说明包含所有ASCII字符,可以开到0-127 包含空格 题目会输入多个源串,在加完当前的val值时,不应清0,可以开个标记数组. #include ...