0
我正在创建一个简单的计算器,我在@IBAction中放了几个数字按钮。我访问按下的按钮的sender.title更新输入标签是这样的:Swift:如何访问@IBAction集合中的一个对象(即按钮)以将发送者返回给新函数?
@IBAction func numberButtonTapped(_ sender: UIButton) {
guard let numberButton = sender.title(for: .normal) else {return}
updateInput(num: numberButton)
}
现在,我想每一个动画按钮按下一个简单的CGAFFineTransform(我知道如何做到这一点),我可以把动画进入@IBAction显然这个工程:
@IBAction func numberButtonTapped(_ sender: UIButton) {
guard let numberButton = sender.title(for: .normal) else {return}
sender.transform = CGAffineTransform(scaleX: 1.2, y: 1.2) // completion handler to reverse the animation
updateInput(num: numberButton)
}
但我希望把动画到另一个函数,这样我可以从不同的@IBActions访问它,就不必一次又一次地重新编写代码,但我不知道如何将“发件人”转移到新功能。 那么我怎么会告诉新功能(让我们叫它animateButton())哪个发件人被按下,以便sender.transform = CGAffineTransform(scaleX:1.2,y:1.2)...将知道哪个按钮动画?
感谢
感谢。我没有想到扩展。这效果很好! – RjC