Swift - 按下时 UIButton 未突出显示
Swift - UIButton not highlighted while pressed
我在以编程方式添加 UIButton
时遇到问题。没有"tap-animation"。
有谁知道为什么会发生这种情况以及如何解决这个问题?我找不到关于这个主题的任何内容...
let weiterButton: UIButton = {
let v = UIButton()
v.translatesAutoresizingMaskIntoConstraints = false
v.setTitle("WEITER", for: .normal)
v.titleLabel?.font = UIFont(name: "AvenirNext-Bold", size: 20)
v.titleLabel?.textColor = .white
v.backgroundColor = UIColor(red: 75/255, green: 75/255, blue: 75/255, alpha: 1)
v.addTarget(self, action: #selector(weiterButtonTapped), for: .touchUpInside)
return v
}()
我想要的动画:
你必须设置 lazy var
而不是 let
因为你想退出你的变量(按钮)。另外,你必须设置 UIButton(type: .system)
因为你告诉那个按钮应该有某种风格。
lazy var weiterButton: UIButton = {
let v = UIButton(type: .system)
v.translatesAutoresizingMaskIntoConstraints = false
v.setTitle("WEITER", for: .normal)
v.titleLabel?.font = UIFont(name: "AvenirNext-Bold", size: 20)
v.setTitleColor(.white, for: .normal)
// If you want a different color when it is pressed
v.setBackgroundImage(UIImage(named: "Hlighlighted image"), for: .highlighted)
v.setBackgroundImage(UIImage(named: "Your image"), for: .normal)
v.addTarget(self, action: #selector(weiterButtonTapped), for: .touchUpInside)
return v
}()
我在以编程方式添加 UIButton
时遇到问题。没有"tap-animation"。
有谁知道为什么会发生这种情况以及如何解决这个问题?我找不到关于这个主题的任何内容...
let weiterButton: UIButton = {
let v = UIButton()
v.translatesAutoresizingMaskIntoConstraints = false
v.setTitle("WEITER", for: .normal)
v.titleLabel?.font = UIFont(name: "AvenirNext-Bold", size: 20)
v.titleLabel?.textColor = .white
v.backgroundColor = UIColor(red: 75/255, green: 75/255, blue: 75/255, alpha: 1)
v.addTarget(self, action: #selector(weiterButtonTapped), for: .touchUpInside)
return v
}()
我想要的动画:
你必须设置 lazy var
而不是 let
因为你想退出你的变量(按钮)。另外,你必须设置 UIButton(type: .system)
因为你告诉那个按钮应该有某种风格。
lazy var weiterButton: UIButton = {
let v = UIButton(type: .system)
v.translatesAutoresizingMaskIntoConstraints = false
v.setTitle("WEITER", for: .normal)
v.titleLabel?.font = UIFont(name: "AvenirNext-Bold", size: 20)
v.setTitleColor(.white, for: .normal)
// If you want a different color when it is pressed
v.setBackgroundImage(UIImage(named: "Hlighlighted image"), for: .highlighted)
v.setBackgroundImage(UIImage(named: "Your image"), for: .normal)
v.addTarget(self, action: #selector(weiterButtonTapped), for: .touchUpInside)
return v
}()