一、加载xib文件的另外一种办法 1.我们说,加载xib,一种方式就是, CZFooterView *footerView = [[[NSBundle mainBundle] loadNibNamed:@“CZFooterView” owner:nil options:nil] lastObject]; 吧,这是一种方式, 2.另外一种方式,就是这里这种方式, UINIb *nib = [UINib nibWithNibNamed:@“” ] bundle:nil ] ; UINib *nib,创建一个Nib,对象, 然后nibWithNibNamed, 传一个我们xib的名称,还是不需要加后缀, 拿到它以后,接下来, 让这个nib,这个怎么读, UIView *vw = [[nib instantiateWithOwner:nil options:nil] lastObject]; 叫什么,instantiateWithOwner,然后调这个方法,lastObject,也是取出里面最后一个控件, 这种方式也是可以的,就是两种创建xib的方式,大家下来可以试一下,咱们是种都是第一种,先把一种用熟了,后面再去看其他的方法, 大家这个知道一下,这儿有这么一个东西,就OK了, 3.然后,关于我们这个“团购”案例,基本上就到此为止了, 大家接下来做的就是,一个是把这个做完, 做完这个以后,不要忘了把这个图片轮播器,加上 这都是需要大家做的, 这是我们这里所说的这个“团购”案例, 二、接下来,是我们下午这个“微博”案例, 1.微博案例, 2.这个微博案例呢,代码也不少,来,咱们一起来看看, 这就是我们这个微博案例,大家看一下,这是不是一行, 两行,三行、四行、是不是也是个UITableView啊, 并且,这个UITableView,有什么HeaderView、FooterView,吗, 是不是连HeaderView、FooterView,也没有啊, 其实告诉大家,这个更简单, 这个微博案例,反而更简单, 简单在哪儿呢,直接, 第一,加载数据, 第二,设置数据源对象, 第三,让控制器实现这个UITableView的数据源方法, 第四,获取模型数据, 第五,返回UITableViewCell, 直接是不是就显示出来了, 是不是就这么几步啊, 那么,这个难,难在哪里呢, 就是我们这个Cell,这个Cell,比起我们之前那个团购那个Cell,稍微有点儿不一样,能看出哪儿不一样来吗, 有的下面有图片,有的没有图片,OK,这是一点, 再就是,有的高度不一样, 有的比较高,有的比较低,有的行高比较高,有的行高并不高, 是不是我们有这些区别, 并且呢,有的有这个会员图标,有的没有会员图标, 是不是这就是它的特点, 也就是说,这个微博的特点,就在于,每一行的单元格,是不是不太一样啊,每一个单元格,不太一样, 行高,这些都不一样, 那么,遇到这种情况下,你还能用一个xib来描述每一行单元格吗, 不行了吧,用xib来描述,是不是每行长的都得一样, 这明显每一行长的有可能不一样啊, 有的有图片,有的没图片, 有的有会员图标,有的没有会员图标, 有的正文这么高,有的正文这么低, 行高也不一样, 是不是这些都不太一样, 所以,接下来,我们还是: 1)第一步,创建模型, 2)第二步,懒加载数据, 3)第三步,拖拽一个UITableView, 4)第四步,设置数据源对象, 5)第五步,控制器实现数据源方法, 只是在数据源方法,那个返回单元格那个方法里面,对于创建单元格这个地方,不使用xib,来创建了,完全自己写代码来创建,明白, 这些子控件,不是在xib里面,直接拖的,而是,我们完全通过代码,一个一个alloc ,init,这样来创建的, 仅此而已, 明白我的意思吗, 既然这些单元格里面的子控件,都是自己一个一个创建的,那么,设置每一个子控件的frame,这个坐标,这就是一个问题, 这个坐标,是不是我们得算啊, 这个坐标我们得算,难就难在这儿了, 其他的没别的, 明白,就难在这儿了, 所以说,接下来,实现这个并不难,但是算坐标,对于数学比较好的人,没问题,那我们就开始吧, 二、实现这个微博案例, 1.首先,我们要干啥,我们要把这个数据加载起来, 1)首先,我们先新建一个项目,叫做“004微博案例”, 2)然后,打开我们这个Main.stroryboard,把控制器的View设置成3.5英寸, 设置为3.5英寸 模拟器改成iPhone4S, 4)来,咱们在这里来创建, 咱们是不是先把这个MVC文件夹,分好啊 把MVC文件夹分好,如下图: 我们现在按照MVC,把它文件组织好了, 好,组织好以后,第一步,是不是拷素材, 5)拷素材, 这个,素材,把这个图片,一个、两个、三个,放进来, 好,然后我们是不是有个weibos.plist文件啊,这个文件吧, 把它拷进来, 6)接下来,第一步,要懒加载数据, 但是,在懒加载数据时候,首先要根据plist文件,把模型创建好吧, 好,打开这个plist,分析,整体是个什么, 整体是个什么,Array,吧, 里面,每一个又是一个什么ÿ