OC中UITabBarController控制器】的更多相关文章

UITabBarController UITabBarController(记为O)常用于管理多个导航控制器,例如有ABC三个导航控制器,可以:addChildViewController(记为A), addChildViewController(B), addChildViewController(C)将其添加,或者设置数组viewControllers=[A,B,C].ABC称作子控制器,O称作父控制器(只是称谓).它管理的控制器一旦加载内存不会释放,即不会从新加载.比如程序刚启动时只显示A…
1.利用webView控件加载本地html5或者网络上html5 2.设置控制器为webView的代理,遵守协议 3.实现代理方法webViewDidFinishLoad: 4.在代理方法中进行操作HTML5中的标签(CRUD→增删改查) 1.用类选择器或者id选择器或者标签选择器等选择要进行操作的标签 2.把选择好的标签转换成字符串 3.webView调用stringByEvaluatingJavaScriptFromString方法 应用场景:比如加载了网络上的百度链接,但是不想要它某个链接…
一.介绍 开发者对匿名函数应该很清楚,其实它就是一个没有名字的函数或者方法,给人直观的感觉就是只能看到参数和返回值.在iOS开发中中,它又有自己的称呼,在OC中叫Block代码块,在Swift中叫闭包(Closure)函数.在我个人看来,两者并没有什么太大不同,定义和实现方式差不多,只不过是名称不一样罢了.由于开发用的比较多,所以我就针对OC和Swift分别写一下他们的传值方式,加深印象. 二.需求 定义两个控制器分别为FirstViewController和SecondViewControll…
学习了这么久的设计模式方面的知识,最大的感触就是,设计模式不能脱离语言特性.近段时间所看的两本书籍,<大话设计模式>里面的代码是C#写的,有一些设计模式实现起来也是采用了C#的语言特性(C#的API,抽象类,在OC中是没有抽象类.没有多继承关系),<设计模式之禅>里面的代码是JAVA写的,与OC差距也是比较大. 但是我想,这些都不是问题,学习设计模式主要学习的是其中的思想,并将之改造成自己所熟悉语言的模式,大同小异.所需要注意的是,在学习的过程中,将之与语言结合起来,多思考.多实践…
1.NSClassFromString()利用一个字符串创建一个类,我是在标签控制器中 UITabBarController中创建它的子控制器中使用的 - (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = [UIColor whiteColor]; [self addChildViewControllerWithClassName:[ZSHomeViewController description] titl…
一.结构体 结构体只能在定义的时候进行初始化 给结构体属性赋值    + 强制转换: 系统并不清楚是数组还是结构体,需要在值前面加上(结构体名称)    +定义一个新的结构体,进行直接赋值    + 逐个赋值注意点    + 不要将进制间搞混 //因为结构体已经初始化为0了,再次初始化就报错了,但是可以逐个赋值. //p->_birthday = {1990,12,3}; p->_birthday.year = 2014; p->_birthday.month = 05; p->_…
为什么要使用继承? 继承的好处: (1)抽取出了重复的代码,使代码更加灵活 (2)建立了类和类之间的联系 继承的缺点: 耦合性太强 OC中的继承 1.OC中不允许子类和父类拥有相同名称的成员变量名:(java中是可以的) 2.编译器从上往下执行,所以在子类前面至少应该要有父类的声明:如 @interface Worker : Person   @end 3.OC中的子类可以拥有和父类相同名称的方法,在子类调用时,优先去自己的内部寻找,如果父类没有定义该方法,则继续在继承链上查找,直到找到为止,如…
一.类别(category) 类别(category)——通过使用类别,我们可以动态地为现有的类添加新方法,而且可以将类定义模块化地分不到多个相关文件中.通常只在类别中定义方法.(类别,接口部分的定义,通常该文件命名为已有"类+类别名.h") 我们知道,如果一个函数在.h文件中无声明而在.m文件中定义它的实现,那么该方法就是私有方法,只能在本类的文件中使用.  若我们在类别的接口部分声明这个方法,那么我们就可以实现对该私有方法的访问. 二.扩展(extension) 扩展(extens…
.OC中的私有变量 在类的实现即.m @implementation中也可以声明成员变量,但是因为在其他文件中通常都只 是包含头文件而不会包含实现文件,所以在.m文件中声明的成员变量是@private的.在.m中定义 的成员变量不能和它的头文件.h中的成员变量同名,在这期间使用@public等关键字也是徒劳的. 能够使用 父类的@public 类型的变量.@protect类型的变量 @private 类型的变量可以看到,但是不能使用 OC中私有方法实现有两种方式: 1)方法在.m中实现,不在.h…
========================== 数组 ========================== 一.认识数组 oc中可以把NSObject对象的子类放到数组这个集合中,但是int.float.double等基础数据类型需要先进行转换才可以存入数组. oc中数组以NS开头,其中分为可变数组和不可变数组: 1.不可变数组(NSArray) 数组在创建的时候被初始化之后,不可以再次进行增.删.改: //NSArray 是一个类,苹果公司封装好的数组类. //数组需要先分配内存再使用,…