Ja som videl niektoré podivné správanie z poľa tlačidlá postavil som do deja. Mám 4 tlačidlá každý vlastný typ TakesContainerButton
a keď tlačidlo je klikli, že zmeny systému písma, ale keď iný tlačidlo klikli predtým tlačidlo vráti na požadované písmo, nie si istý, čo sa deje tu
Tlačidlá sú tiež vložené do zásobníka zobraziť, ak veciach, ktoré
Tu je vykonávanie keď jedno z tlačidiel je stlačené, kde buttons
je rad 4 tlačidlá
@IBAction func filterPressed(_ sender: TakesContainerButton) {
for button in buttons {
button.unclick()
}
sender.click()
}
tu je vlastná trieda
class TakesContainerButton: UIButton {
var bottom = UIView()
func click(){
self.setTitleColor(.darkGray, for: .normal)
let xOffset:CGFloat = 10
bottom = UIView(frame: CGRect(x: xOffset / 2, y: self.frame.height - 3, width: self.frame.width - xOffset, height: 3))
bottom.layer.cornerRadius = 1.5
bottom.backgroundColor = .darkGray
self.addSubview(bottom)
}
func unclick(){
bottom.removeFromSuperview()
self.setTitleColor(UIColor(hex: "8B8B8B"), for: .normal)
}
override func awakeFromNib(){
setFont()
}
func setFont(){
self.titleLabel?.font = UIFont(name: "Lato-Bold", size: 12)
}
}