Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在UICollectionView背景上设置不透明度而不影响UICollectionViewCell的不透明度?_Ios_Objective C - Fatal编程技术网

Ios 如何在UICollectionView背景上设置不透明度而不影响UICollectionViewCell的不透明度?

Ios 如何在UICollectionView背景上设置不透明度而不影响UICollectionViewCell的不透明度?,ios,objective-c,Ios,Objective C,我已将UICollectionView的颜色设置为图像图案,如下所示: self.collectionView.backgroundColor = [UIColor colorWithPatternImage:image]; 我想设置collectionView的alpha值,而不影响UICollectionViewCell的alpha值。有办法做到这一点吗?设置collectionView的alpha值也会影响UICollectionViewCell,所以我已经尝试过了。我还应该尝试什么/还

我已将
UICollectionView
的颜色设置为
图像
图案,如下所示:

self.collectionView.backgroundColor = [UIColor colorWithPatternImage:image];
我想设置
collectionView
的alpha值,而不影响
UICollectionViewCell
的alpha值。有办法做到这一点吗?设置
collectionView
的alpha值也会影响
UICollectionViewCell
,所以我已经尝试过了。我还应该尝试什么/还有什么真正有效


感谢您提供的任何提示。

使用
-colorWithAlphaComponent:
UIColor的
-colorWithAlphaComponent:
方法:

[self.collectionView setBackgroundColor:[[UIColor redColor] colorWithAlphaComponent:0.5]];

这将导致只有背景具有非1 alpha值。

如果您只想更改不透明度而不更改颜色,或者需要跟踪颜色本身,可以使用:

self.collectionView.backgroundColor = [self.collectionView.backgroundColor colorWithAlphaComponent:0.5f];
UICollectionView
上有两种可能的“背景”,您可能需要更改其不透明度。
backgroundColor
属性是最简单的,但只更改全色背景。还有
backgroundView
,它可以有子视图,如果只更改背景颜色不透明度,子视图将不会更改不透明度。您可以使用以下方法更改背景视图的不透明度:

self.collectionView.backgroundView.alpha = 0.5f;
Swift 4解决方案:

self.contentView.backgroundColor = UIColor.gray.withAlphaComponent(0.5)