UICollectionView-添加自定义交互(如手势等)

自定义UICollectionView布局 废话说在前面 效果展示 CustomCarCollectionViewFlowLayout类的定义 类说明 属性说明 internalItemSpacing itemSize sectionEdgeInsets scale currentItemIndex 代理定义 代码说明 prepareLayout 手势处理 collectionViewContentSize layoutAttributesF 阅读详情

1。相关方法

     - (void)invalidateLayout   // 刷新布局

e.g. 

- (void) handlePinches:(UIPinchGestureRecognizer *)paramSender{

    CGSize DefaultLayoutItemSize = CGSizeMake(80.0f, 120.0f);   //这是原先设置的默认的尺寸大小,这里每次缩放都是以默认尺寸为基数
    UICollectionViewFlowLayout *layout =  (UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout;
    layout.itemSize =  CGSizeMake(DefaultLayoutItemSize.width * paramSender.scale, DefaultLayoutItemSize.height * paramSender.scale);
    [layout invalidateLayout];   //废弃旧布局,更新新布局
} 
- (void) viewDidLoad{
    [super viewDidLoad];
    self.collectionView.backgroundColor = [UIColor whiteColor];
    UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self  action:@selector(handlePinches:)];
    for (UIGestureRecognizer *recognizer in  self.collectionView.gestureRecognizers){
        if ([recognizer isKindOfClass:[pinch class]]){
            [recognizer requireGestureRecognizerToFail:pinch];   //此处使用是为了确保各缩放手势保持独立,不会混淆

            // [aGesture requireGestureRecognizerToFail: bTapGesture];   //b手势无效后,才能承认a手势(如双击无效后才承认单击等,确保不混淆手势)

        }
    }
    [self.collectionView addGestureRecognizer:pinch];
}

UICollectionView翻页效果实现 UICollectionView翻页效果实现 在写文章之前,先介绍下我的项目需求,我们项目是一个电商APP,当前功能是在商品详情里实现一个商品推荐模板,要实现商品快速浏览,并实现快速翻页功能,贴上我实现的一个效果动图,如下: ![图1 ](https://img-blog.csdnimg.cn/20190713152617612.gif) 以前实现照片浏览功能,也用过collectio... 阅读详情

相关推荐

UICollectionView的cell拖动交换位置

collectionView的cell拖动交换位置

L_weiguo的博客 3961

关于在程序中增加手势 UISwipeGestureRecognizer

在看糗事百科源码时学到的,特简单的一东西,如果不知道有这个,可能还真会费点事,现在把那段抄录下来: //给当前的view添加一个向右的手势swip。当向右滑动的时候返回之前的主页面     UISwipeGestureRecognizer    *swip=[[[UISwipeGestureRecognizer    alloc]      initWithTarget:selfac

沸腾的泪水的专栏 1584

iOS tableViewCell 的移动操作 (添加长按手势)

iOS tableViewCell 的移动操作 (添加长按手势)

zminghui06的专栏 3139

iOS解决UIcollectionView添加手势后不响应其cell的问题

1.添加手势到collectionView并设置代理 UITapGestureRecognizer *innoCollTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(innoCollTapAction:)]; innoCollTap.delegate = self;

东风不来的专栏 8206

三相Vienna整流器过零点电流畸变?试试这个SVPWM调制波补偿技巧

本文针对三相Vienna整流器在电流过零点附近出现的电流畸变问题,提出了一种基于SVPWM调制波补偿的有效解决方案。该方法通过注入零序分量重构占空比,巧妙解决因拓扑约束导致的调制矛盾,在基本不增加计算复杂度的前提下,显著平滑电流波形,降低THD。

weixin_29212867的博客 114

游戏开发实战:5种AOI算法对比(九宫格 vs 灯塔 vs 十字链表)

本文深入对比了游戏开发中五种主流AOI算法(九宫格、灯塔、十字链表等)的性能与适用场景,帮助开发者根据项目规模选择最优解决方案。通过详细的技术分析和实战数据,揭示不同算法在万人同屏等极端场景下的表现差异,为MMORPG等大型多人在线游戏提供关键性能优化指南。

weixin_29268385的博客 474

UICollectionViewController 实现利用手势滑动选择

代码例子:http://pan.baidu.com/s/1bn06eOf   http://download.youkuaiyun.com/detail/qqmcy/6887385 Cell.h #import @interface Cell : UICollectionViewCell @property (strong, nonatomic) UILabel* label; @en

杜甲同学的专栏 6177

ICESat-2数据下载及处理分析随笔

ICESat-2全称是Ice,Cloud and land Elevation Satellite -2。看名字我们能知道它的任务是测ice,cloud和land elevation,而且这是一个Satellite,是一颗卫星。那么这里我们就要分清ICESat-2和ATLAS的关系,ICESat-2是星载平台,是一个space observatory,ATLAS是这个星载平台上搭载的单光子激光雷达系统。

u011322358的博客 1万+

关于ScrollView和UIcollectionView手势冲突的问题

关于ScrollView和UIcollectionView手势冲突的问题

qq1156261535的专栏 4040

TC8工作原理

OPEN组织由全世界主要整车厂和供应商组成,旨在推广以太网技术在车辆中的应用。OPEN下属多个技术委员会(Tech Committee,简称TC),对不同方面的技术细节进行量化定义,并发布相应规范。其中TC8规范包括车载以太网ECU从物理层到应用层的各层互操作性以及常规基础功能服务,目的在于提高不同ECU之间的兼容性 UpperTester UpperTester作为Tester与DUT的被测核心功能模块之间的中介,辅助完成测试。UpperTester的主要功能包括: 与Tester就测试模式切换/请.

jasonj333 5326

【MT7628】固件开发-SDK4320添加MT7612E WiFi驱动操作说明

【MT7628】固件开发-SDK4320添加MT7612E WiFi驱动操作说明

wgl307293845的博客 2079

TVBoxOSC 剧情编辑器完整指南:三步搭建一个免代码的多分支互动故事

你刚把大纲写完:一个接夜班的新人盘下一家深夜面档,中间要做一个选择——改菜单,还是守老配方。对话你写得出来,但卡住你的是"两条路怎么真正分出去、结尾再汇回来"。这正是 TVBoxOSC 剧情编辑器要解决的问题,它跑在电视盒子上,全程不要求你有任何编程基础。 ## TVBoxOSC 怎么搭出第一个分支 一句话:TVBoxOSC 剧情编辑器是一个面向电视盒子的开源互动叙事工具。你在画布上拖出对话节

gitblog_00264的博客 718

安装 miniconda linux

安装 miniconda linux

jacke121的专栏 1万+

TisprCardStack与UICollectionView:揭秘 Tinder 式交互背后的实现原理

想要在你的iOS应用中添加类似Tinder的滑动卡片交互效果吗?TisprCardStack正是你需要的解决方案!这款基于UICollectionView的开源库为你提供了完整的Tinder式卡片堆栈视图实现,让开发者能够轻松创建流畅的卡片滑动界面。😊 ## 什么是TisprCardStack? TisprCardStack是一个专门为iOS开发者设计的开源库,它基于苹果官方的UIColle

gitblog_00447的博客 1036

AUTOSAR系统服务篇 - BswM的使用

本文档是对4.0.3版及更高版本的AUTOSAR模式管理应用的介绍。其主要目的是为AUTOSAR的用户和开发人员提供基于示例的AUTOSAR模式管理不同方面的详细概述,这些示例在文中进行了解释。本文中的代码清单共同构成了示例ECU的配置。第2章解释了基础的模式管理概念,例如一般的模式、如何实现模式切换、模式管理者和模式用户的角色等。其次介绍了应用模式管理和基础软件模式管理的依赖关系,两者密切相关。基础软件模式管理器是AUTOSAR R4.0中的中央模式管理模块。它具有很高的可配置性。

IOT2017的博客 846

【毕设级教程】从0到1实现基于YOLOv8的xView卫星图像目标检测系统(含UI界面,助力遥感智能毕设)

本文基于YOLOv8模型设计了一个面向xView卫星图像的目标检测系统。首先对xView数据集进行了格式转换处理,将原始多边形标注转换为YOLO格式的边界框标注。随后通过配置YOLOv8模型参数完成训练,实现了对卫星图像中建筑、车辆等多类目标的准确识别。为提高系统交互性,采用PyQt开发了可视化界面,支持图像选择、实时检测和结果展示功能。整个系统兼顾学术价值和实用价值,为遥感领域的自动化目标检测提供了可行方案。

m0_64661770的博客 130

UICollectionView 上添加长按手势如何监听?

思路: 添加长按手势,并设置代理 在手势回调方法中判断是否结束 首先添加代理 @interfacemyCollectionViewController:UICollectionViewController<UIGestureRecognizerDelegat...

ciermao3056的博客 238

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

在UITableView或UICollectionView的自定义的cell里添加手势或button,响应方法时如何传参数

在UITableView或UICollectionView的自定义的cell里添加手势或button时,有时会可能会需要用到选中的cell需要传出cell的位置,下面就两种情况给出解释 一:button响应方法如何传参 1,用代理 @protocol CustomCellProtocol - (void)customCell:(CustomCell *)cell didTapButt

u011365057的专栏 2305

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

UICollectionView之自定义Layout

#import <UIKit/UIKit.h> @interface WQViewController : UIViewController - (id)initWithFrame:(CGRect)frame; @end #import "WQViewController.h" #import "WQCollectionViewController.h" #...

aijian9025的博客 192

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

UICollectionView添加长按手势,长按选中某一个item

很多时候,我们都需要在项目中添加长按手势,比如UICollectionView中,我们长按对某一个item进行删除,那么这时,我们就需要在集合试图中添加长按的手势,手势的添加是简单的,但是添加过手势之后,我们怎么区分我们长按选中的是哪一个item呢 首先,我们先来看看我们是如何添加长按手势的 1.创建集合试图,这个就比较简单了.创建完集合试图,我们在集合试图上面添加长按的手势 UIGestu...

weixin_30634661的博客 493

iOS - UICollectionView 长按拖拽单元格

一、先上gif效果图,DEMO链接:https://gitee.com/xudongxiang/DragDropCollectionView.git 二、代码实现细节 初始化collectionView,以及遵守UICollectionViewDelegate、UICollectionViewDataSource ,并且注册cell等一波常规操作 UICollectionViewFl...

qq_27501365的博客 6773

UICollectionview(三)(拖拽动画)

UICollectionview进阶:自定义布局(-) - 掘金 UICollectionView(二) - 掘金 拖拽动画步骤 添加长按手势 对手势状态监听 拖拽之后对数据源的改变 添加长按手势 self.longPress = UILongPressGestureRecognizer.init(target: self, action: #selector(longPressMoving...

weixin_34310127的博客 738

初级入门学习,iOS拖动排序【UICollectionView】

项目中的需求,近期在做优化和版本迭代,就把这块的东西拎出来单独整理一下。实现思路新建一个类继承UICollectionView,并给这个View添加长按手势。 关于iOS中的手势,这篇文章写的很详细,可以参考。监听手势事件。手势有很多的状态,这个系统文档中就可以看到,也有对应的说明。此处,监听四种状态,根据不同的状态做相应的操作。12345678- (void)longPressed:(UILon...

iOS学习的博客 837

[iOS]UICollectionView的cell拖动改变位置

- (void)awakeFromNib { [super awakeFromNib]; UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(lonePressAction:)]; [_col...

Gamin 2540
上一篇: UICollectionView的HeaderView、FooterView
下一篇: UICollectionViewCell上显示编辑菜单
berained
博客等级 码龄20年 14粉丝 15原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值