欢迎来到天天文库
浏览记录
ID:25269763
大小:62.68 KB
页数:3页
时间:2018-11-19
《ios6新特性之集合视图uicollectionview介绍》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、IOS6新特性之集合视图UICollectionView介绍起首,CollectionView包括以下几个部门:1、View元素部门2、数据模子和交互部门3、contents表现部门4、View样式部门<下次先容>一、View元素部门IOS6SDK中提供了这个全新UI的属性和要领等。查察之后,我们可以总结出CollectionView中包括了以下几个要害字部门:UICollectionView<根基的UI部门>UICollectionViewDataSource<数据源部门,很想UITableView>UICollectionV
2、iewLayoutAttributes<问题部门>发明一个题目,UICollectionView很想UITableView,就像亲兄弟一样,呵呵~~1、CollectionView照片墙Demo最终结果展示貌似有点像书架,不外这只是感性的熟悉罢了,接下类我们举办分解。2、通过上图,我们可以获得这样的几个部门:Cells单位格SupplementaryViews增补的view部门,着实类似于UITableView的header和footer部门DecorationViews起首看Cells部门可以看到Cells部门就是我们最终必要
3、表现的图片部门,也就是每一张图。SupplementaryViews如下图右边白色的笔墨部门DecorationViews如下图最终,三个元素,就组成了照片墙,下面是元素组成图二、数据模子和交互部门1、数据模子UICollectionViewDataSource就是一个署理,为collectionView提供数据,同UITableView类似,它可以界说有几多个section、一个section内里有几多个item、提供cell的supplementaryview的配置。要
4、领先容:<1>numberOfSectionsInCollectionView,即返回几多个section在上图中只必要返回2个。<2>collectionView:numberOfItemsInSection:在每个section中有几多个items。这时辰我们就必要举办section的判定了,上图中第一个section返回4个,第二个section返回5个。<3>collectionView:cellForItemAtIndexPath在每个item上面应该表现什么内容。譬喻在上图中的section0item0位置表现下图:
5、<4>Cell和View的重用和UITableView一样,CollectionView也有重用机制,也有ReuseQueue。只有当当前表现view的部门,数据才加载表现,其他部门都被放在了重用行列内里了。在IOS6中体系老是会为我们初始化了Cell,在行使中必要举办Cell类的注册:注册要领有:-(void)registerClass:forCellWithReuseIdentifier:-(void)registerClass:forSupplementaryViewOfKind:withReuseIdentifier:-
6、(void)registerNib:forCellWithReuseIdentifier:-(void)registerNib:forSupplementaryViewOfKind:withReuseIdentifier:从行列中取出一个Cell,详细要领如下:-(id)dequeueReusableCellWithReuseIdentifier:forIndexPath:-(id)dequeueReusableSupplementaryViewOfKind:withReuseIdentifier:forIndexPath:下面
7、我们通过现实的代码,来演示详细怎样举办Cell的重用第一步:在collectionview中举办配置(Cell类的注册)//Incollectionviewsetup...[collectionViewregisterClass:[MyCellclass]forCellWithReuseIdentifier:@”MY_CELL_ID”]第二步:在下面的函数中,从行列中取出一个cell即可。而且再也不消对cell举办空值判定,以做特另外初始化操纵。Cell的统统初始化事变都由体系为我们做好了。我们只必要对cell举办一些赋值等操纵
8、即可。-(UICollectionView*)collectionView:(UICollectionView*)cvcellForItemAtIndexPath:(NSIndexPath*)indexPath{MyCell*cell=[cvdequeueReu
此文档下载收益归作者所有