我有一个带autolayout的动态单元格,它有一个图像和一个动态标签。目前我尝试绘制气泡图像,但我需要知道给定文本的标签大小是多少。我不得不说我总是收到一个不好的尺寸,当我滚动桌面视图时,泡泡图像被放置在corectlly但它广告另一个泡泡。
这是我的代码:
fetch
我无法弄清楚我的代码有什么问题。有什么建议?
答案 0 :(得分:0)
我假设您的函数是在UICollectionView DataSource的cellForItemAtIndexPath
函数处调用的。只要需要绘制进入视图的集合视图单元,就会多次调用该函数。因此,每次发生这种情况时,您都会将imageViewBG
插入单元格,从而重复插入。
快速解决方案是将特定标记添加到imageViewBG
,如下所示,并在每次重新添加之前将其删除。
cell.viewWithTag(99)?.removeFromSuperview()
let imageViewBG = //Configure
imageViewBG.tag = 99
cell.insertSubview(imageViewBG, atIndex: 0)
虽然这有助于解决重复问题,但我强烈建议将图像视图添加到故事板上的自定义单元格,并配置应在cellForItemAtIndexPath
中显示的图像。