【发布时间】:2023-03-31 00:07:02
【问题描述】:
【问题讨论】:
-
请详细说明一下。
-
使用文本的颜色代码作为按钮的背景颜色和屏幕的背景颜色作为按钮的背景颜色。
-
@AdityaSrivastava 点击时按钮变暗是必须的
-
在 uibutton 操作中将按钮的背景颜色更改为 superview 的颜色
【问题讨论】:
用户点击时更改背景和文本颜色。
【讨论】:
您可以创建一个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
}
}
【讨论】: