iOS9中collectionView新特性怎么用
发表于:2025-11-16 作者:千家信息网编辑
千家信息网最后更新 2025年11月16日,这篇文章主要为大家展示了"iOS9中collectionView新特性怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"iOS9中collectionV
千家信息网最后更新 2025年11月16日iOS9中collectionView新特性怎么用
这篇文章主要为大家展示了"iOS9中collectionView新特性怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"iOS9中collectionView新特性怎么用"这篇文章吧。
具体用法:
1.创建collectionView并设置代理
- (UICollectionView *)collectionView{ if (_collectionView == nil) { UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; layout.itemSize = CGSizeMake(50, 50); _collectionView = [[UICollectionView alloc] initWithFrame:CGRectMake(0, 20, self.view.bounds.size.width, self.view.bounds.size.height) collectionViewLayout:layout]; layout.minimumLineSpacing = 10; layout.minimumInteritemSpacing = 10; [_collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"Cell"]; _collectionView.backgroundColor = [UIColor cyanColor]; _collectionView.dataSource = self; //此处给其增加长按手势,用此手势触发cell移动效果 UILongPressGestureRecognizer *longGesture = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handlelongGesture:)]; [_collectionView addGestureRecognizer:longGesture]; } return _collectionView;}2.设置其资源
_dataSource = [NSMutableArray array]; for (int i = 1; i <= 50; i++) { NSString *imageName = [NSString stringWithFormat:@"%d",i]; [_dataSource addObject:imageName]; }3.监听手势,并设置其允许移动cell和交换资源
- (void)handlelongGesture:(UILongPressGestureRecognizer *)longGesture { //判断手势状态 switch (longGesture.state) { case UIGestureRecognizerStateBegan:{ //判断手势落点位置是否在路径上 NSIndexPath *indexPath = [self.collectionView indexPathForItemAtPoint:[longGesture locationInView:self.collectionView]]; if (indexPath == nil) { break; } //在路径上则开始移动该路径上的cell [self.collectionView beginInteractiveMovementForItemAtIndexPath:indexPath]; } break; case UIGestureRecognizerStateChanged: //移动过程当中随时更新cell位置 [self.collectionView updateInteractiveMovementTargetPosition:[longGesture locationInView:self.collectionView]]; break; case UIGestureRecognizerStateEnded: //移动结束后关闭cell移动 [self.collectionView endInteractiveMovement]; break; default: [self.collectionView cancelInteractiveMovement]; break; }}- (BOOL)collectionView:(UICollectionView *)collectionView canMoveItemAtIndexPath:(NSIndexPath *)indexPath{ //返回YES允许其item移动 return YES;}- (void)collectionView:(UICollectionView *)collectionView moveItemAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath*)destinationIndexPath { //取出源item数据 id objc = [_dataSource objectAtIndex:sourceIndexPath.item]; //从资源数组中移除该数据 [_dataSource removeObject:objc]; //将数据插入到资源数组中的目标位置上 [_dataSource insertObject:objc atIndex:destinationIndexPath.item];}通过以上设置便可以成功移动cell了,下面奉上效果图

以上是"iOS9中collectionView新特性怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
移动
手势
资源
特性
位置
内容
数据
篇文章
效果
数组
路径
学习
帮助
成功
效果图
易懂
更多
条理
状态
目标
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
应用软件开发案例官方最新版
单片机应用软件开发
数据库的理解
cad连接数据库失败
服务器Gpk
提高政治站位 网络安全
plsql远程数据库地址
卡纸一二三年级网络安全绘画
新网dns解析服务器
金动力网络技术
计算机网络技术和黑客
批量txt转数据库
前端软件开发年度总结
苹果传送数据库
外文期刊数据库检索
数据库管理员的英文缩写是什么
香港沙田服务器
甲骨文数据库是什么类型
天津现代化软件开发创新服务
服务器管理器是干什么的
在数据库中的数据共享指的是什么
网络安全威胁课后测验
网络安全分析检验面试
access数据库参数查询
中国版我的世界pvp服务器
一个网站可以有几个数据库
服务器声音很响是什么原因
服务器设置独立显卡
数据库字符串长度
属于外国数据库的是