2014-11-18 2 views
0

У меня есть UICollectionReusableView с кнопками, когда пользователь нажимает на кнопки, которые я хотел бы изменить backgroundColor и borderColor. BackgroundColor изменен, но borderColor не изменился.
Код:Как изменить кнопку borderColor в UICollectionReusableView, когда ячейка выделена

@implementation ClothesTopView 

//============================================================================== 

- (void)configCell:(id<ClothesTopViewDelegate>)delegate 
{ 
    _clothesTopViewDelegate = delegate; 
    for (UIButton *button in _topButtonCollection) 
    { 
     button.layer.cornerRadius = 2; 
     button.layer.borderWidth = 1.f; 
     button.layer.borderColor = [UIColor whiteColor].CGColor; 
    } 
} 

//============================================================================== 

- (IBAction)topButtonAction:(UIButton *)sender 
{ 
    for (UIButton *button in _topButtonCollection) 
    { 
     if (button == sender) 
     { 
      sender.layer.borderColor = [UIColor colorWithRed:226/255.f green:71/255.f blue:49/255.f alpha:1.f].CGColor; 
      sender.backgroundColor = [UIColor colorWithRed:226/255.f green:71/255.f blue:49/255.f alpha:1.f]; 
     } 
     else 
     { 
      button.layer.borderColor = [UIColor whiteColor].CGColor; 
      button.backgroundColor = [UIColor clearColor]; 
     } 
    } 
    [_clothesTopViewDelegate topViewButtonDidPressWithTitle:sender.titleLabel.text]; 
} 

//========================================================================= 

@end 
+1

У меня такая же проблема. Ожидание помощи –

ответ

0

После применения изменений попытаться вызвать этот метод

[self setNeedsDisplay]; 

Это покажет IOS перерисовать ячейку, и вы граничат цвета должны меняться.

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