【iOS】UICollectionView遇到的坑及解决方法(二例记录)

本文记录了在iOS开发中使用UICollectionView时遇到的两个问题及其解决方案:1. UICollectionViewCell的视图重叠问题,原因是直接使用UICollectionViewCell并添加子视图,正确的做法是使用dequeueReusableCellWithReuseIdentifier并初始化。2. 解决UICollectionViewCell点击事件不响应的问题,通过在代理UIView上实现点击方法,但由于手势冲突,需在UIGestureRecognizerDelegate中判断touch.view,解决方案是创建一个继承自UIView的背景View,用于处理点击事件。
摘要由CSDN通过智能技术生成

前言

很久没有写文章了,一个是因为五月份一直在学校忙(WAN)毕(YOU)业(XI)的事情,另一个则是因为没有什么好东西值得记录。

六月份回归工作马上做了一个很小的版本,三个组件的排列问题(涉及到autoLayout)算是给我出了个小难题,不过解决之后感觉并不是很有记录的价值,因此文章又少了一篇。

这次的文章算是新鲜出炉的问题记录,来源于我一个正在进行的,一个人负责所有客户端开发的版本(2019.6.20 V3.1.0 进度一半 尚未联调)。


记录

相比于UITableView的使用,在手头的项目里面collection的使用几乎为零,唯一的一次还是我上个版本在UITableViewCell里面使用了UICollectionView(具体为啥我也忘了)。

(1)UICollectionViewCell的视图重叠问题

其实就是发生在上个版本,但这个版本我在使用Xcode的Debug View Hierarchy查看视图层次时才发现了这个问题。

主要表现如下图:

实际表现正常(因为只有一张图,所以重叠也看不出来)

实际重叠严重(可能影响性能?)

简单来说就是给同一个cell不断加进了子视图,如果cell变的复杂一点,比如有不同文字,叠加问题就会更加严重了。

首先看一下生成UICollectionViewCell的方法:

- (UICollectionViewCell *)colle
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值