按下按钮的效果
答
更改背景和文本颜色,当用户敲击。
答
您可以创建一个UIButton
子类,并针对不同的控制状态设置背景图片:
class CustomButton: UIButton {
override init(frame: CGRect) {
super.init(frame: frame)
sharedInit()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
sharedInit()
}
private func sharedInit() {
setBackgroundImage(UIColor.darkGrayColor().image, forState: .Normal)
setBackgroundImage(UIColor.blackColor().image, forState: .Highlighted)
setTitleColor(UIColor.whiteColor(), forState: .Normal)
}
}
extension UIColor {
var image: UIImage {
return imageWithSize(CGSize(width: 1, height: 1))
}
func imageWithSize(size: CGSize) -> UIImage {
UIGraphicsBeginImageContextWithOptions(size, true, 0)
self.setFill()
UIRectFill(CGRect(origin: .zero, size: size))
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image
}
}
请详细一点。 –
@AdityaSrivastava当点击按钮时,按钮变暗是必要的 – KVL
将按钮的背景颜色更改为uibutton动作上的超级视图颜色 –