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 ...
随机推荐
- linux初始化配置-----网络配置
一.设置linux网络 1)零时设置ip地址 由于centos7默认没有ifconfig命令所以为了使用方便我们先安装net-tool使我们能使用ifconfig命令查看ip地址 ·挂载系统光盘 [r ...
- C# 4.0中dynamic的作用
internal sealed class Coffee { public string GetName() { return "You selected Maxwell coffee.&q ...
- RCP: P2 Update两个烦人bug和解决办法
问题 Eclipse新的P2 Update机制,使用起来很方便,如果使用P2 plugin自带的UI,开发者完全不用写任何代码 即可实现application的在线更新. 但是P2 Update至少有 ...
- 用TCGA收集的mRNA表达数据作差异表达
做差异表达的软件DEseq和edgeR所需要的数据格式必须是原始counts,经过normalization和log2后的数据都不适合,所以对于做差异表达计算的童鞋可以使用ExperimentHub下 ...
- RMAN的入门篇
一.RMAN连接数据库 1. 连接本地数据库 [oracle@oracle hotbak]$ export oracle_sid=orcl [oracle@oracle hotbak]$ rman ...
- Windows上搭建hadoop开发环境
前言 Windows下运行Hadoop,通常有两种方式:一种是用VM方式安装一个Linux操作系统,这样基本可以实现全Linux环境的Hadoop运行:另一种是通过Cygwin模拟Linux环境.后者 ...
- 聊天界面之气泡文本cell(二)使用Autolayout
聊天界面主要是cell的动态高度计算和效率的问题,参考网上的两篇文章: 1.优化UITableViewCell高度计算的那些事 http://www.cocoachina.com/ios/20150 ...
- 防止SVN冲突,Elipse资源同步介绍
灰色向右箭头: 本地修改了 灰色向右箭头且中间有白色减号: 本地删除了,服务器未删除 灰色向右且中间有个加号的箭头:本地比SVN上多出的文件 蓝色向左箭头:svn上修改过 蓝色向左且中间有个加号的箭头 ...
- ubuntu下添加/删除启动服务项
在网上查了一下,命令如下 1.添加一个服务: $sudo update-rc.d ServiceName default 2.删除一个服务 $sudo update-rc.d ServiceName ...
- IE下a标签跳转失败
最近又发现了一个IE和其他浏览器的不同点,IE中,<a></a>中无内容时,无法点击跳转,真是虐死我了,没想到下面这样写也会有兼容性,看来我要学的真的很多. <div i ...