仓酷云

标题: IOS设计类簇在iOS开辟中的使用仓酷云 [打印本页]

作者: 分手快乐    时间: 2015-1-18 11:32
标题: IOS设计类簇在iOS开辟中的使用仓酷云
照着书上的例子,一个一个做下来,只要不是文盲,就都会的呀,没有体现我的一点点个人价值。所以我决定了,不能再这样下去类簇(classcluster)是一种计划形式,在FoundationFramework中被普遍利用,举个复杂的例子
  1. NSArray*arr=[NSArrayarrayWithObjects:@"foo",@"bar",nil];NSLog(@"arrclass:%@",[arrclass]);//output:__NSArrayI
复制代码
明显__NSArrayI是一个公有类,来看看这个类的头文件
  1. @interface__NSArrayI:NSArray{unsignedint_used;}//...
复制代码
能够看出__NSArrayI承继了NSArray。为何要这么计划呢?拿NSNumber来举个例子,我们都晓得NSNumber能够存储多品种型的数字,如Int/Float/Double等等,一种体例是把NSNumber作为基类,然后分离往完成各自的子类,像如许:

初看起来也没甚么成绩,但假如子类良多,像如许:

这对利用者来讲明显不敷便利,得记着这么多类。假如利用类簇,成绩就变得复杂了,把Number作为笼统基类,子类各自完成存取体例,然后在基类中界说多个初始化体例,像如许:

如今只必要记着一个类就能够了。NSNumber的初始化伪代码也许像如许:
  1. -(id)initWithBool{return[[__NSCFBooleanalloc]init];}-(id)initWithLong{return[[__NSCFNumberalloc]init];}//...
复制代码
在iOS项目中的使用

在开辟app时常常会碰到体现和举动完整一样,但数据源纷歧样的情形。以花瓣app为例,一样是瀑布流,大概来自我喜好的图片、某个画板下的图片、某个用户的图片等等。假如为每种体现体例都新建一个Controller,而且利用这个Controller来初始化,那末就会碰到最入手下手提到的成绩:子类太多,利用方便。这恰好能够经由过程类簇来很便利地弄定。好比如许:
  1. @implementationHBWaterfallViewController-(id)initWithLiked{return[[HBLikedViewControlleralloc]init];}-(id)initWithBoardID:(NSInteger)boardID{return[[HBBoardViewControlleralloc]initWithBoardID:boardID];}#pragmamark-通用的办法-(PSUICollectionViewCell*)collectionView:(PSUICollectionView*)collectionViewcellForItemAtIndexPath:(NSIndexPath*)indexPath{//...}//...#pragmamark-每一个子类必要完成的办法-(void)fetchMoreData{NSAssert(NO,@"子类必要完成此办法");}
复制代码
利用起来相似如许[[HBWaterfallViewControlleralloc]initWithBoardID:9527]或[[HBWaterfallViewControlleralloc]initWithLiked]。假如有新的DataSource,新加一个初始化办法便可,关于利用者来讲,翻开头文件,看下init开首的办法就好了。

只能IB识别IB也没那么高深XIB文件解开之后就是一堆代码之前面过一家小公司看我当时写的程序里面用到了IB一脸不屑
作者: 因胸联盟    时间: 2015-1-21 09:39
AD: iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。
作者: 灵魂腐蚀    时间: 2015-1-27 08:07
培训时可以选择安卓,iOS,Java,因为实习的时候我选了安卓,当时实习时间只有三周,学的晕头转向,而java我也没学过,iOS的基础是C语言,这个大学里还是学过的,于是选择了iOS。
作者: 若天明    时间: 2015-1-27 13:42
到大三时,学院与我去培训的机构成立了实习基地,并让我们寒假去实习了一段时间,感觉还不错,于是在大四的时候去培训了
作者: 简单生活    时间: 2015-2-1 10:22
这个办法就是在WindowsXP或Win7的电脑上,使用vmware虚拟机来搭建一个真实的Mac OS X环境。
作者: 爱飞    时间: 2015-2-5 09:34
有办法利用自己手头的电脑立刻开始这个美妙旅程的。
作者: 乐观    时间: 2015-2-5 15:15
才在自己的Windows电脑上安装配置成功了一个完美的Mac OS X Lion(10.7.4)系统,而且下载了Xcode4.5的最新版本。虽然不能实机调试,但是作为iOS开发学习已经非常完美了。
作者: 深爱那片海    时间: 2015-2-9 08:51
我也从简单的状态栏适配开始,先研究了下关于状态栏的适配,特总结如下,供广大网友一起讨论交流。
作者: 只想知道    时间: 2015-2-11 01:24
培训的时候很痛苦,每天要待12个小时,上午讲课,下午和晚自习解决作业,看文档,学习的时候感觉就是资料太少,而且看着资料也不明所以,非常痛苦,
作者: 透明    时间: 2015-2-11 11:11
近期由于IOS7的发布,所以应用的适配潮可谓是都搞的锣鼓喧天,甚是热闹,因此呢,因适配IOS7而产生的问题也是铺天盖地的卷来,
作者: 再现理想    时间: 2015-2-13 22:49
首先是基础,在汉昌的课程非常全面。从object—c到最后的毕业项目,基本上方方面面都涉及到了,我是一名非计算机专业的学生,起初学习还有点吃力,因为基础知识薄弱。经常像听天书
作者: 小女巫    时间: 2015-2-21 04:11
因为我们老师也是自学的,给我们讲课说的最多的就是百度,谷歌,查文档。
作者: 若相依    时间: 2015-3-5 14:59
好处就是运行速度会变快,ios6针对系统的优化进一步加强了,很多网友测试ios6,第一感觉就是速度快,而且ios69会有一些新功能,新浪微博,facetime支持3G网等等。。弊端就是,现在的ios6只能算是正式版本的第一个版本,bug很多,不少人刷完ios6都出现了很多毛病,开不开机,缺少图标等等。。最好现在不要升级,等官网放出下一个版本的时候,再选择升级。。。
作者: 小妖女    时间: 2015-3-9 20:26
以上可以同时进行,学习过程中尽量不要纠结细节和底层,要知道ios是封闭的、OC是高级语言,我们不可能过多地去了解它的原理,至少在新手阶段没有必要。用迭代的方式更新你的知识,而不是死抠一个知识点。
作者: 变相怪杰    时间: 2015-3-14 08:44
AD: iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。
作者: 活着的死人    时间: 2015-3-21 01:05
down下code4app网站的每个分类的代码挨着看
作者: 飘飘悠悠    时间: 2015-3-27 21:00
其实在培训的过程中,学习到最多的就是查资料的方式,当时感觉老师好坑,什么都不告诉我们,让我们自己去查,但是现在觉得还是要自己解决问题,这样才能理解的更加深入。
作者: 金色的骷髅    时间: 2015-3-29 11:11
同很多iOS开发者一样,我也是通过培训进入到iOS开发这个行业,开始没有打算培训,只准备自己学习一些计算机编程相关的知识,毕业时找一份编程相关工作(本人是信息与计算科学这个专业,是数学系)。
作者: 山那边是海    时间: 2015-4-3 16:59
iPhone文件系统:创建、重命名以及删除文件,NSFileManager中包含了用来查询单词库目录、创建、重命名、删除目录以及获取/设置文件属性的方法(可读性,可编写性等等)。
作者: 兰色精灵    时间: 2015-4-5 03:36
因为我们老师也是自学的,给我们讲课说的最多的就是百度,谷歌,查文档。
作者: 海妖    时间: 2015-4-7 22:55
培训的时候很痛苦,每天要待12个小时,上午讲课,下午和晚自习解决作业,看文档,学习的时候感觉就是资料太少,而且看着资料也不明所以,非常痛苦,




欢迎光临 仓酷云 (http://www.ckuyun.com/) Powered by Discuz! X3.2