按下按钮的效果

The effect of pressing the button

我该怎么做呢,当你点击它时它变暗并返回,但文本将始终可见。

更改用户点击时的背景和文本颜色。

您可以创建一个 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
    }

}

设置Button为自定义类型,自定义高亮选中状态: