2015-08-17 7 views
1

Я хочу нажать ячейку UICollectionView, и ячейка станет полупрозрачной.изменение значения ячейки UICollectionView ячейки не работает

- (void)collectionView:(UICollectionView *)collectionView 
didSelectItemAtIndexPath:(NSIndexPath *)indexPath 
{ 
    GLEpisodeCell *cell=[collectionView dequeueReusableCellWithReuseIdentifier:[GLEpisodeCell identifier] forIndexPath:indexPath];//GLEpisodeCell is subclass of UICollectionViewCell 
    cell.alpha=0.5; 
    cell.contentView.alpha=0.5; 
} 

Но это не сработает. Ячейка по-прежнему непрозрачна.

ответ

3

Попробуйте это, это может вам помочь.

- (void)collectionView:(UICollectionView *)collectionView 
didSelectItemAtIndexPath:(NSIndexPath *)indexPath 
{ 
    GLEpisodeCell *cell=[collectionView cellForItemAtIndexPath:indexPath];//GLEpisodeCell is subclass of UICollectionViewCell 
    cell.alpha=0.5; 
    cell.contentView.alpha=0.5; 
} 
+0

Спасибо. Я делаю ошибку низкого уровня. –

+0

Счастливое кодирование ... – Vishnuvardhan

0

cell.backgroundColor = [UIColor colorWithRed:1 green:1 blue:1 alpha:0.5];

Это создаст ячейки цвет фона, как 50% transperant не содержимое ячейки как well.If вы хотите, то вы хотите. cell.backgroundView.alpha = 0.5;

+0

Я пробовал оба метода. Но это не сработает. –

+0

проверьте, поймаете ли вы правильную ячейку, изменив цвет фона на красный или что-то еще. Обратите внимание на изменение. –

+0

Спасибо. Я фактически использую неправильную ячейку. –

0

Макет устанавливает альфа. Для переопределения, поместите это в свой мобильный подкласс:

override func apply(_ layoutAttributes: UICollectionViewLayoutAttributes) { 
    alpha = 0.5 
} 

Вы также должны установить альфа для вновь созданных клеток.

Смежные вопросы