Swift - 自动更新文本字段
Swift - Automatically updating textfields
我想使用这些文本字段并在它们之间进行等式计算。我遇到的问题是在我的等式完成后自动更新最终文本字段
在这种情况下,我希望在更新车辆价格或更新服务合同时更新总现金价格,而无需按 DP 按钮。
谁能给我一个关于如何完成这个的建议。
代码:
@IBAction func DPButtonPressed(_ sender: Any) {
totalCashPrice.integerValue = vehiclePrice.integerValue + serviceContract.integerValue + salesTax.integerValue
}
而不是 @IBOutlet func DPButtonPressed(_sender: Any)
,我希望该功能自动完成。
enter image description here
这是我在使用委托时遇到的问题
override func viewDidLoad() {
super.viewDidLoad()
totalCashPrice.delegate = self
}
func textFieldDidBeginEditing(textField: NSTextField!) {
}
func textFieldShouldEndEditing(textField: NSTextField!) -> Bool {
return false
}
func textFieldShouldReturn(textField: NSTextField!) -> Bool {
totalCashPrice.resignFirstResponder()
return true
}
@IBAction func DPButtonPressed(_ sender: Any) {
totalCashPrice.integerValue = vehiclePrice.integerValue +
serviceContract.integerValue + salesTax.integerValue
textFieldShouldEndEditing(textField: totalCashPrice)
enter image description here
Cocoa 是事件驱动的。选择一个事件,让它驱动你。
文本字段是一个控件,可以配置为在每次值更改(即用户键入一个字符)时发出一个控件事件。
还可以配置一个文本字段来发出这样的通知:https://developer.apple.com/documentation/appkit/nstextfield/1399397-textdidchange
当用户离开文本字段等事件发生时,文本字段也会向其委托发送消息。
你只需要决定你想要响应什么样的信号并配置一些东西以便你得到那个信号。
只需自己指定“何时更新车辆价格或更新服务合同”是什么意思,即哪种用户操作算作更新字段。
我想使用这些文本字段并在它们之间进行等式计算。我遇到的问题是在我的等式完成后自动更新最终文本字段
在这种情况下,我希望在更新车辆价格或更新服务合同时更新总现金价格,而无需按 DP 按钮。
谁能给我一个关于如何完成这个的建议。
代码:
@IBAction func DPButtonPressed(_ sender: Any) {
totalCashPrice.integerValue = vehiclePrice.integerValue + serviceContract.integerValue + salesTax.integerValue
}
而不是 @IBOutlet func DPButtonPressed(_sender: Any)
,我希望该功能自动完成。
enter image description here
这是我在使用委托时遇到的问题
override func viewDidLoad() {
super.viewDidLoad()
totalCashPrice.delegate = self
}
func textFieldDidBeginEditing(textField: NSTextField!) {
}
func textFieldShouldEndEditing(textField: NSTextField!) -> Bool {
return false
}
func textFieldShouldReturn(textField: NSTextField!) -> Bool {
totalCashPrice.resignFirstResponder()
return true
}
@IBAction func DPButtonPressed(_ sender: Any) {
totalCashPrice.integerValue = vehiclePrice.integerValue +
serviceContract.integerValue + salesTax.integerValue
textFieldShouldEndEditing(textField: totalCashPrice)
enter image description here
Cocoa 是事件驱动的。选择一个事件,让它驱动你。
文本字段是一个控件,可以配置为在每次值更改(即用户键入一个字符)时发出一个控件事件。
还可以配置一个文本字段来发出这样的通知:https://developer.apple.com/documentation/appkit/nstextfield/1399397-textdidchange
当用户离开文本字段等事件发生时,文本字段也会向其委托发送消息。
你只需要决定你想要响应什么样的信号并配置一些东西以便你得到那个信号。 只需自己指定“何时更新车辆价格或更新服务合同”是什么意思,即哪种用户操作算作更新字段。