我有一个带按钮的UICollectionReusableView,当用户点击按钮时我想更改backgroundColor和borderColor。 BackgroundColor已更改但borderColor未更改 代码:
@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
答案 0 :(得分:0)
应用更改后尝试调用此方法
[self setNeedsDisplay];
这将告诉iOS重绘单元格,边框颜色应该更改。