2015-07-01 5 views
7

Ich habe die Farbe eines UICollectionView mit einem image Muster wie so gesetzt:Wie setze ich die Deckkraft auf den UICollectionView-Hintergrund ohne Auswirkung auf die Opazität von UICollectionViewCell?

self.collectionView.backgroundColor = [UIColor colorWithPatternImage:image]; 

ich ohne die Alpha des collectionView setzen möchten die Alpha des UICollectionViewCell zu beeinflussen. Gibt es eine Möglichkeit, dies zu tun? Das Alpha von collectionView einzustellen wirkt sich auch auf die UICollectionViewCell aus, also habe ich das schon probiert. Was soll ich noch versuchen/was sonst noch funktionieren wird?

Danke für irgendwelche Tipps.

Antwort

5

Mit der Methode der -colorWithAlphaComponent:UIColor:

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

Das in nur den Hintergrund Ergebnis wird ein Nicht-1-Alpha-Wert aufweist.

+1

Perfekt vielen Dank! –

2

Wenn Sie nur die Opazität ändern möchten, ohne die Farbe zu ändern oder benötigen Spur der Farbe zu halten selbst, können Sie verwenden:

self.collectionView.backgroundColor = [self.collectionView.backgroundColor colorWithAlphaComponent:0.5f]; 

Es gibt zwei mögliche „Hintergründe“ auf UICollectionView, die Sie vielleicht die Opazität von ändern. Die Eigenschaft backgroundColor ist die einfachste, ändert jedoch nur den Vollfarbhintergrund. Es gibt auch die backgroundView, die Unteransichten haben kann, die die Deckkraft nicht ändern, wenn Sie nur die Deckkraft der Hintergrundfarbe ändern. Sie können die Opazität des backgroundView mit ändern:

self.collectionView.backgroundView.alpha = 0.5f; 
Verwandte Themen