`
374016526
  • 浏览: 96503 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

UIViewController理解

 
阅读更多

关于UIViewContrller的理解:

1.UIViewContrller之间的切换有三种方式:
一、UIViewController自身之间的调用:([self presentModalViewController:UIViewController animated:YES];) 对应的返回操作函数:[self dismissModalViewControllerAnimated:YES];这里的self代表的是UIViewController自己。其可设置四种动画模式:
case 0:
[ctrl setModalTransitionStyle:UIModalTransitionStyleCoverVertical]; //底部向上 默认的动画方式
break;
case 1:
[ctrl setModalTransitionStyle:UIModalTransitionStyleCrossDissolve]; //渐变
break;
case 2:
[ctrl setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal]; //翻转
break;
case 3:
[ctrl setModalTransitionStyle:UIModalTransitionStylePartialCurl]; //翻半也
break;
default:
[ctrl setModalTransitionStyle:UIModalTransitionStyleCoverVertical]; //底部向上 默认的动画方式
break;


       二、通过UIViewController的子类UINavigationController这个号称为导航控制器的Controller来控制ViewContrller之间的切换,对应的调用函数,与返回函数分别是:[self.navigationController pushViewController:ctrl animated:YES]; 返回:([self.navigationController popViewControllerAnimated:YES];),也可直接指定返回到那一个ViewController:(- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated) 还可以直接返回到RootViewController:(- (NSArray *)popToRootViewControllerAnimated:(BOOL)animated)

备注:小知识点设置navigationItem的backItem按钮上的文本,(self:navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"返回style:UIBarButtonItemStyleDone target:self action:@selector(action:)];)默认的文本是navigationItem的title;
    实现NavigationController的delegate可以在返回时做相应的更新操作(- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated 

      三、就是UITabBarContrller其也是继承于UIViewController,主要是做图1这样的功能的 (图1)其缺点在于下面的图片不能自己控制大小和样式


如果使用controller之间的切换出来用于控制其它controller的那个Controller在程序运行中不会释放以外,其它的Controller只要调用了返回函数那么就会被清理掉。
备注:如果Controller或view中又线程或者定时器之类的动画操作如果没有结束那么这个Controller或view就会出现内存泄露了。

分享到:
评论

相关推荐

    深入讲解iOS开发中的UIViewController

    首先,我们需要理解UIViewController和UIView的区别。UIView是显示内容和处理用户交互的基本单元,它负责绘制屏幕上的元素,如按钮、文本框等,并接收和处理用户的触摸事件。而UIViewController则是负责管理这些...

    深入理解iOS的状态栏

    总之,理解和掌握iOS状态栏的控制技巧,不仅可以提升应用的视觉效果,还能优化用户体验。合理运用状态栏隐藏、样式调整以及背景色设置,可以让应用更加符合设计需求和用户习惯。在实际开发中,应遵循苹果的最新指南...

    如何创建一个非常酷的3D效果菜单.docx

    这个过程需要对iOS开发有深入理解,特别是AutoLayout的使用和Core Animation的原理。对于初学者,这可能是一项挑战,但通过学习和实践,你将能够掌握这些关键技能,从而创建出更多创新的交互设计。

    简单阐述一下Objective c

    Objective-C,简称为OC...理解Objective-C的内存管理和UIViewController的生命周期,以及掌握MVC设计模式,是成为一名成功的iOS开发者的基础。通过熟练运用这些知识,你可以构建出高效、稳定且用户体验良好的应用程序。

    iOS系统中导航栏的转场解决方案与最佳实践.docx

    通过深入理解导航栏组件的生命周期和MVC架构,结合特定的业务场景,可以设计出更加高效、灵活的导航栏管理策略。美团App的经验为其他开发者提供了宝贵的参考,有助于他们在面临类似挑战时找到合适的方法。

    apple程序生命周期

    在Apple的iOS应用开发中,程序的生命周期是开发者必须要深入理解的关键概念。程序生命周期涉及到从应用程序启动、运行、暂停、后台处理、恢复直至关闭的全过程。对于iPhone开发来说,掌握这个生命周期有助于编写更加...

    第七节 利用ModalViewController切换View.docx

    【ModalViewController】是一种在iOS应用开发中用于在多个视图之间进行切换的技术,特别是在需要从一个视图模态地过渡到另一个全屏显示的...理解如何正确创建和管理Modal ViewController对于iOS开发者来说至关重要。

    iPhone开发基础教程_学习笔记

    在iOS开发领域,尤其是针对...总的来说,iPhone应用开发涉及Object-C编程、界面设计原则以及如UIViewController这样的核心组件的理解和使用。通过深入学习和实践,开发者可以创建出功能丰富、用户体验优秀的iOS应用。

    iOS学习笔记

    在iOS开发领域,理解和掌握基础UI组件是至关重要的,因为它们构成了用户与应用程序交互的主要界面。这份笔记将深入探讨一些关键的概念和技术,帮助初学者建立起扎实的iOS开发基础。 首先,我们来看一下`...

    移动软件开发-3期(KC015) 事件与手势识别 教学设计.doc

    UIViewController和UIView都是响应者对象,它们可以接收到并处理来自UIEvent的事件。响应者链条是一个事件传递机制,当事件发生时,会从第一响应者开始,如果当前响应者不处理,事件会沿着响应者链条向上层传递,...

    移动软件开发-3期(KC015) 程序入口.pdf

    系统会解析这个Storyboard,找到标记为`Initial View Controller`的UIViewController实例。这个初始视图控制器是用户首先看到的界面,它被设置为UIWindow的根视图控制器。UIWindow是iOS中的一个关键类,它负责管理...

    Method Swizzling 和 AOP 实践1

    Method Swizzling 是Objective-C编程中的一种黑魔法技巧,它允许我们在运行时动态地改变方法的实现。这种方法在解决特定问题时...因此,在实际应用中,应谨慎使用,并确保有足够的理由和理解去进行Method Swizzling。

    iOS面试题-iOS部分

    在iOS面试中,掌握核心知识点至关重要,这有助于应聘者展示其专业技能和理解力。以下是一些关于iOS面试的关键知识点: 1. **MVC模式**: - MVC(Model-View-Controller)是一种广泛用于iOS开发的软件设计模式。...

    iOS人机界面指南.pdf

    开发者可以通过`UIApplication`和`UIViewController`的API来设置状态栏的样式。状态栏应该尽量保持可见,因为它是用户获取系统信息的重要途径。在全屏观看媒体内容时,可以考虑暂时隐藏状态栏,但应确保用户能轻松地...

    基于IOS平台的游戏“五子棋”毕业论文.doc

    然后,作者开始探索iOS应用的构建基础,包括了解视图控制器(UIViewController)、视图(UIView)以及程序委托(Delegate)的概念,同时熟悉了Xcode中的界面构建工具,如.xib文件,通过拖放控件创建用户界面。...

    设计模式在Cocoa中的应用

    理解并熟练应用这些模式,可以使Cocoa开发者编写出更加优雅和高效的代码,同时也能够更好地理解和利用Cocoa框架提供的各种工具和服务。在实践中,结合Cocoa的特性,灵活运用设计模式,是提升软件质量的关键。

    iPhone入门

    在iOS开发中,`UIAlertView`是苹果提供的一种...总的来说,`UIAlertView`在早期的iOS开发中是一个常用的组件,虽然现在已经被`UIAlertController`取代,但理解其用法对于维护旧项目或理解iOS开发历史仍然是有价值的。

    移动软件开发-3期(KC015) 触摸事件和绘图.pdf

    UIApplication、UIViewController和UIView都是响应者链的一部分,具备处理事件的能力。一次完整的触摸事件,无论涉及单个还是多个触点,都会生成一个事件对象。例如,如果两个手指同时触碰视图,`touchesBegan(_:...

Global site tag (gtag.js) - Google Analytics