我正在创建自定义iPhone键盘,但UIButton存在问题
我正在使用此代码为我的按钮创建渐变
let gradient = CAGradientLayer()
gradient.frame = self.bounds
let gradientColors: [AnyObject] = [UIColor(red: 253.0/255, green: 253.0/255, blue: 253.0/255, alpha: 1.0).CGColor, UIColor(red: 253.0/255, green: 153.0/255, blue: 53.0/255, alpha: 1.0).CGColor]
gradient.colors = gradientColors
self.setBackgroundImage(gradient.UIImageFromCALayer(), forState: UIControlState.Normal)
效果很好,但有一个小故障。它创建渐变但在按钮的右下方添加一个薄阴影。
我也尝试过没有渐变,我添加了纯色,但是那里有同样的阴影。
最后我使用此代码更改背景颜色
self.backgroundColor = UIColor(red: 253.0/255, green: 253.0/255, blue: 253.0/255, alpha: 1.0)
它起作用,影子不再存在了。但这又引发了另一个问题。我的按钮在UIButton的突出显示统计上不会改变颜色。
有没有办法摆脱那个阴影,或者在突出显示状态(以及选择状态)下使UIButton颜色发生变化?
我实际上尝试过任何解决方案,包括改变阴影,边框......但没有任何效果。 :|
我也试过这个:
if (self.state == UIControlState.Normal) {
self.backgroundColor = UIColor(red: 153.0/255, green: 53.0/255, blue: 53.0/255, alpha: 1.0)
}
else if (self.state == UIControlState.Reserved) {
self.backgroundColor = UIColor(red: 253.0/255, green: 253.0/255, blue: 253.0/255, alpha: 1.0)
}
但又没效果。
感谢。
答案 0 :(得分:0)
使用图层属性按钮可能对删除阴影很有帮助,请按照此链接使用按钮的图层属性