我已将 UIButton
子类化,并尝试在突出显示按钮时设置标题颜色。自定义按钮也在 nib 文件中。
我有代码:
- (void)layoutSubviews
{
[super layoutSubviews];
self.titleLabel.textColor = [UIColor blueColor];
[self setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted]; // Offending line
}
但是,当我有 setTitleColor:forState:
行时, View 不会加载(似乎进入无限循环并且不显示)。是否应该在其他地方声明?您还如何设置自定义 UIButton
的突出显示标题颜色?
最佳答案
如果你想在 layoutSubviews 中这样做,这将避免你当前正在创建的无限循环:
- (void)layoutSubviews
{
[super layoutSubviews];
if (self.state == UIControlStateHighlighted) {
self.titleLabel.textColor = [UIColor redColor];
} else {
self.titleLabel.textColor = [UIColor blueColor];
}
}
关于ios - 如何设置子类 UIButton 的突出显示标题颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11821636/