【发布时间】:2018-01-12 00:47:17
【问题描述】:
我有一个自定义的子类UIButton.type = 'System'。
它嵌入在一个蓝色背景的视图中,该视图本身位于视图控制器的主视图中。
按钮背景颜色设置为白色。
按钮子类的代码如下:
class CustomButton : UIButton{
@IBInspectable var highlightedBackgroundColor :UIColor?
@IBInspectable var nonHighlightedBackgroundColor :UIColor?
@IBInspectable var highlightedTitleTextColor :UIColor?
@IBInspectable var nonHighlightedTitleTextColor :UIColor?
override var isHighlighted :Bool {
get {
return super.isHighlighted
}
set {
if newValue {
self.backgroundColor = highlightedBackgroundColor
self.setTitleColor(highlightedTitleTextColor, for: .highlighted)
}
else {
self.backgroundColor = nonHighlightedBackgroundColor
}
super.isHighlighted = newValue
}
}}
highlightedBackgroundColor 设置为dark gray。
highlightedTitleTextColor 设置为 white。
因此,按下时,按钮应在灰色背景上显示白色标题文本。相反,我得到了这个:
标题文本颜色的不透明度似乎
在 IB 中,我尝试调整所有绘图按钮设置,并尝试添加“状态配置”设置,以补充和代替按钮子类中的 setTitleColor 代码;没有任何变化。
知道如何做才能获得预期的结果吗?
【问题讨论】: