HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – UICollectionViewCell的alpha属性在重新加载后才会生效?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我在cellForItemATindexPath中设置一个单元格的alpha属性,如下所示……
func collectionView(collectionView: UICollectionView,cellForItemATindexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell: UICollectionViewCell = collectionView.dequeueReusableCellWithReusEIDentifier("CGPathCell",forIndexPath: indexPath) as UICollectionViewCell
// Prepare cell
cell.alpha = 0.5
cell.setNeedsDisplay()
return cell
}

…最初出现的细胞是不透明的(α为1.0).如果我滚动,出现的“新”(重用)单元格具有预期的alpha值.如果我滚动回到开头,“原始”单元格(开始不透明)现在也具有预期的alpha值.

为什么在初始加载时未设置alpha值?

其他不起作用的尝试:

>将此添加到委托,我得到相同的结果:

func collectionView(collectionView: UICollectionView,willDisplayCell cell: UICollectionViewCell,forItemATindexPath indexPath: NSIndexPath) {
    cell.alpha = 0.5
}

>将其添加到cellForItemATindexPath:

let attrs = UICollectionViewLayoutAttributes(forCellWithIndexPath: indexPath)
attrs.alpha = 0.5
cell.applyLayoutAttributes(attrs)
@H_675_18@

解决方法

我相信这种情况正在发生,因为Apple正在对单元格进行一些特殊的内部处理,作为UICollectionView的一部分.如果在单元格的contentView属性上设置alpha,则alpha会按预期保持不变.

UICollectionViewCell docs种暗示:

如果您有BACkgroundView或SELEctedBACkgroundView,则需要单独设置其alpha.

@H_675_18@ @H_675_18@

大佬总结

以上是大佬教程为你收集整理的ios – UICollectionViewCell的alpha属性在重新加载后才会生效?全部内容,希望文章能够帮你解决ios – UICollectionViewCell的alpha属性在重新加载后才会生效?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。