使用xib创建CollectionViewCell注意事项

UICollectionView使用Xib自定义cell 平时直接在Storyboard中拖拽UICollectionView,然后画Cell。但是项目多个View都用到该Cell,于是将其提出来复用。 阅读详情

项目中最近经常使用collectionView 但是系统的总是不满足要求,这时就需要我们自定义collectionView,根据不同的架构有不同的创建方式,我使用的是xib创建,那么问题来了:

- (void)awakeFromNib {

    [_HLChoosePhotoActionSheetCollectionView registerClass:[HLChoosePhotoActionSheetCell class] forCellWithReuseIdentifier:@"HLChoosePhotoActionSheetCellID"];

}

在实例化方法中注册xib中的cell运行后,直接崩掉!抛出一下问题 找不到identifier标识的cell ,当时就蒙了,怎么会找不到呢?

后来研究才发现,原因在于注册cell的方法顺序错误,应该在

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
    
    static NSString *HLChoosePhotoActionSheetCellIdentifier = @"HLChoosePhotoActionSheetCellID";
    
    //在这里注册自定义的XIBcell 否则会提示找不到标示符指定的cell
    UINib *nib = [UINib nibWithNibName:@"HLChoosePhotoActionSheetCell" bundle: [NSBundle mainBundle]];
    [collectionView registerNib:nib forCellWithReuseIdentifier:HLChoosePhotoActionSheetCellIdentifier];
    
    HLChoosePhotoActionSheetCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:HLChoosePhotoActionSheetCellIdentifier forIndexPath:indexPath];
    
    [cell showDataWithImageName:@"weixin_app_icon"];

    return cell;
}

这个代理方法里面进行注册自定义的cell。在运行,OK!跑起来了。


从“盲控”到“预见”:聊聊永磁同步电机负载观测器(PMSM Load Observer)如何让控制更丝滑 本文深入探讨了永磁同步电机负载观测器(PMSM Load Observer)如何通过前馈补偿和转动惯量辨识技术实现智能抗扰控制。从传统‘盲控’到预见性调节,负载观测器显著减少转速波动和能耗,提升系统响应速度。文章详细解析了观测器算法架构、工程调参技巧及前沿发展趋势,为电机控制领域提供实用解决方案。 阅读详情

相关推荐

【具身算法】VLA算法-Diffusion Policy

《扩散策略:多模态机器人控制的新方法》摘要 本文提出了一种基于扩散模型的机器人控制策略(DiffusionPolicy),用于解决视觉运动控制中的多模态行为、高维动作空间和训练稳定性问题。该方法利用去噪扩散概率模型(DDPM)生成动作序列,通过迭代优化处理复杂动作分布,显著提升了性能。实验表明,在15项机器人操作任务中,扩散策略平均性能提升46.9%,有效解决了传统显式/隐式策略的局限性。其核心优势在于:1)优雅建模多模态动作分布;2)适应高维动作空间;3)训练过程稳定。未来工作将探索与强化学习的结合及计算

puzhinan7781的博客 1390

iOS 开发 UICollectionView使用Xib自定义cell

平时直接在Storyboard中拖拽UICollectionView,然后画Cell。但是项目多个View都用到该Cell,于是将其提出来复用。 1、创建一个继承自UICollectionViewCell的类,暂且命名为ResourceCollectionViewCell,勾选Also create XIB file 来创建xib文件(当然,你也可以单独创建),这样就创建了三个文件 2...

奋斗吧灬青年的博客 2726

Altium Designer应用技巧5: Altium Live账号的获得

为了更好的应用Altium Designer,我们需要得到一个Altium Live账号,但从其英文或者中文官方网站取得,都需要7个工作日的时间,而且对于个人用户来说,并不是100%都能够获取到。本文介绍一种,从俄罗斯Altium官方网站获取账号的方法,可以立即使用。     1、点击http://live.altium-ru.com/#Join网址进入俄罗斯Altium官方网站,Altiu

snmplink的博客 1万+

UICollectionView 讲解

什么是UICollectionView UICollectionView是一种新的数据展示方式,简单来说可以把他理解成多列的UITableView(请一定注意这是UICollectionView的最最简单的形式)。如果你用过iBooks的话,可能你还对书架布局有一定印象:一个虚拟书架上放着你下载和购买的各类图书,整齐排列。其实这就是一个UICollectionView的表现形式,或者iP...

移动编程 507

数字电视中的AD(Audio Description)音频描述技术详解

AD(Audio Description)音频描述是一种辅助技术,旨在帮助视障人士更好地理解视觉内容。通过在节目或视频的自然停顿处插入额外的语音叙述来解释屏幕上的视觉信息,如人物动作、场景变化、文字说明等,从而让视力受损的人士也能获得完整的观影体验。AD服务不仅限于电视广播,也广泛应用于电影、剧院表演、在线视频平台等领域。PID:用于标识和区分不同的音频流。PMT表:提供每个音频流的详细信息,包括PID、编解码器类型和语言代码。时间戳:PTS和DTS用于同步音频与视频内容。解复用。

以实战经验介绍行业知识 739

Field Characteristics 深入解析,理解 SAP ABAP Analytics 中 Dimension 与 Measure 的真正边界

在SAP ABAP Analytics数据模型中,字段应建模为Dimension还是Measure,关键在于业务语义而非数据类型。Dimension提供分析上下文,构成数据坐标系,支持钻取与切片;Measure则需具备明确聚合语义(如#SUM、#MIN、#MAX),且必须满足Distinct(无重复)与Complete(无缺失)原则,确保聚合结果准确。错误的建模会导致聚合偏差,根源常在事实粒度不清或关联关系不当。因此,正确划分字段角色,本质是让Analytical Engine准确理解业务数据的分析逻辑。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 56

UICollectionView UITableView registerNib和registerClass的回调

//从nib加载 [deviceContainer registerNib:[UINib nibWithNibName:@"Cell" bundle:nil] forCellWithReuseIdentifier:@"CellView"];//回调 -(void)awakeFromNib //从class加载 [deviceContainer registerClass:[My

mikejaps的博客 1466

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

机器学习深度学习业余选手 1498

iOS UICollectionView简单使用

首先认识一下UICollectionView [objc] view plaincopy NS_CLASS_AVAILABLE_IOS(6_0) @interface UICollectionView : UIScrollView   UICollectionView 和 UICollectionViewController 类是iOS6 新引进的API,用于

LGSC的IOS学习之路专栏 673

(8)(8.19) GPIOs

Ardupilot官网关于《Copter》的翻译 —《(8.19) GPIOs》。

无人机开发(开源Ardupilot) 1万+

Python爬虫实战:实时监控美国SEC官网文件更新,助你第一时间掌握市场动态

在资本市场中,信息就是财富。美国证券交易委员会(SEC)官网公开了大量公司披露文件,涵盖财报、招股说明书、内幕交易等重要信息。对投资者、分析师及法律合规人员来说,实时监控这些公开文件具有重要价值。

2201_76125261的博客 594

UICollectionView详解

使用UICollectionView 必须实现UICollectionViewDataSource,UICollectionViewDelegate,UICollectionViewDelegateFlowLayout这三个协议。 - (void)viewDidLoad   {       [super viewDidLoad];       self.title = @"UIColl

上孟的专栏 905

AgentScope Java 2.0 项目实战: 从零构建自己的个人AI助手“小龙虾“

本文系统介绍如何基于Spring Boot WebFlux、React 18和TypeScript,从零搭建一个本地化的个人AI助手管理平台——AgentScope Paw。项目支持多Agent创建与管理、SSE流式对话、工作区文件CRUD、技能市场、子智能体孵化、AI辅助起草Agent配置等核心功能,并深度集成钉钉、企业微信、飞书、GitHub等IM通道。

program哲学 1423

UICollectionLayout布局 —— UIKit之学习UICollectionView记录二《流水布局》

重点知识 一、 加载collectionView注意事项   1.创建collectionView,有两种方式 :一种是xib和一种是纯代码;设置代理和数据源,注册cell,配置流水布局的属性,如上、下、左、右间距及行间距和列间距。   2. 创建CollectionViewCell,实现collectionView代理和数据源方法。 3. 设置每个cell的尺寸。 ...

weixin_30326515的博客 198

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

iOS UICollectionViewCell 的 contentView 注意事项

iOS UICollectionViewCell 的 contentView 之前在使用UICollectionViewCell时一般直接将contentView移除 - (instancetype)initWithFrame:(CGRect)frame{     if (self = [super initWithFrame:frame]) {         [self.content

jeffasd的专栏 3386

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

iOS 探讨之 cellForRow/cellForItemAtIndexPath 函数不执行

阐述 日常开发中总能遇见一些奇葩的状况,事后发现都是因一些“小忘记”而产生,不过有一些是挺奇葩的。 估计大家刚看标题 "cellForRow/cellForItemAtIndexPath函数不执行" 第一反应就是数据源(dataSource)未设置或者是数据源中的数据总量为零。 大家的反应都是合理的,但我今天想提出的情景是当视图尺寸(Size)宽(width)或高(height)为零的时候表

yanglei3kyou的专栏 1万+

【IOS开发基础系列】UICollectionView专题

1 定义1.1 什么是UICollectionViewUICollectionView是一种新的数据展示方式,简单来说可以把他理解成多列的UITableView(请一定注意这是UICollectionView的最最简单的形式)。最简单的UICollectionView就是一个GridView,可以以多列的方式将数据进行展示。标准的UICollectionView包含...

junbaozi的专栏 202

UICollectionView的简单介绍

1.UICollectionView默认的背景颜色是黑色的 2.注意使用UICollectionView,第一步设置背景颜色 2.1显示内容和UITableView非常相似 第一步 设置数据源的代理,代码设置View.dataSoure=self 2.2 .拖线 2.3 实现数据源的协议 2.4 实现方法 3.UICollectionView 它的Cell 默认只能从原型Cell中进

AbelLH的博客 1423

一、ios的通过Xib构建UICollectionView的简单运用

众所周知,UICollectionView是ios6才最新引进来的API,用于展示集合视图,可实现多列布局; 经常听人说起 UICollectionView怎么好用,由于之前在赶项目也没有什么时间去学习这个,现在闲下来,学习了简单的使用,感觉功能还是蛮强大的,相对UIScrollView和UITableView它相对而言更灵活了; UICollectionView有两种方式,一种是 Xib还有

一只小菜鸟 1万+

ios的通过Xib构建UICollectionView的简单运用

众所周知,UICollectionView是ios6才最新引进来的API,用于展示集合视图,可实现多列布局; 经常听人说起 UICollectionView怎么好用,由于之前在赶项目也没有什么时间去学习这个,现在闲下来,学习了简单的使用,感觉功能还是蛮强大的,相对UIScrollView和UITableView它相对而言更灵活了; UICollectionView有两种方式,一种是 Xib还有

stand___的博客 2412

iOS CollectionView加载xib CollectionViewCell

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {         static NSString *fcell = @"cell";         //在这里注册自定义的X

4324

iOS xib添加UICollectionView ,iOS UITableViewCell中包含UICollectionView

步骤 1. 使用xib来定义一个cell, 添加位置约束. 步骤2. 在xib中设置UICollection的属性,如 scroll Direction 设置为水平显示。 Scrolling Enable设置为NO。 在代码中设置属性 UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc]...

u014616159的博客 2190

iOS开发:xib之UICollectionView自定义cell

XIB——UICollectionView自定义cell 创建UICollectionViewCell的XIB文件: 利用:XIB——AutoLayout添加约束自定义cell: 不会添加约束的,可参考iOS开发:XIB之AutoLayout添加约束 注册cell:!!! 协议方法中给cell赋值 运行:iPhone 6 : 375 * 667 :

Dongxk的博客 6468

CollectionView中的一个cell中加载xib中的CollectionView 不显示cell

在第一个CollectionView 的 dataSource 委托中新建一个CollectionView     var count = 0     var cellsViewController:cellsCollectionViewController?         /*********************************** DataSource *******

Away_Qu的博客 1872

两种方式(xib和代码)创建自定义collectionview

a.使用xib创建cell和ReusableView: 1.添加对应的cell和ReusableView文件 2.在cell和ReusableView的xib文件中设置indentifier。 3.在viewDidLoad注册界面:  [self.collectionView registerNib:[UINib nibWithNibName:@"testCell" bundle:n

book_1992的专栏 3581

uicollectionview registerclass vs registernib

当cell是用代码实现的时候用registerclass,当cell是用xib文件实现的时候用registernib 转载于:https://www.cnblogs.com/yibinpan/p/5366239.html

weixin_30950607的博客 235
上一篇: 使用系统拍照返回的照片默认旋转90问题
下一篇: AutoLayout框架Masonry使用心得
光速之年
博客等级 码龄12年 31粉丝 97原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值