【问题标题】:Dynamically Calculate Pace in Swift在 Swift 中动态计算配速
【发布时间】:2015-10-11 09:03:35
【问题描述】:

我在下面有这段代码。如何在我填写字段时动态计算步速,而不是通过点击“计算步速”按钮手动计算?

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var minTextField: UITextField!
    @IBOutlet weak var secTextField: UITextField!
    @IBOutlet weak var distTextField: UITextField!
    @IBOutlet weak var paceLabel: UILabel!


    func paceInSeconds (minutes:Double, seconds: Double, distance: Double) -> Double {
        return ((minutes*60) + seconds) / distance
    }


    @IBAction func paceCalculator(sender: UIButton) {
        var paceMinutes = paceInSeconds(((minTextField.text as NSString).doubleValue, seconds: (secTextField.text as NSString).doubleValue, distance: (distTextField.text as NSString).doubleValue)) / 60

        var roundedPaceMinutes = Double(floor(paceMinutes))
        var decimalPaceSeconds = paceMinutes - roundedPaceMinutes
        var intPaceMinutes = Int(floor(roundedPaceMinutes))
        var paceSeconds = Int(floor(decimalPaceSeconds * 60))
        var paceSecondsZero = String(format: "%02d", paceSeconds)

        paceLabel.text = "\(intPaceMinutes):\(paceSecondsZero)/km"
    }    
}

这是故事板用户界面:

【问题讨论】:

    标签: ios swift calculator dynamically-generated


    【解决方案1】:

    您可以使用UITextFieldDelegate 协议的各种功能。如果您将视图控制器指定为文本字段的委托,它将能够对文本字段中的更改采取行动。

    在你的情况下,你应该实现textField:shouldChangeCharactersInRange:replacementString: 函数。

    【讨论】:

    • 我是编程的初学者,所以这没有多大意义。我正忙于阅读有关上述内容的更多信息以更了解它。如果我为 UITextFieldDelegate 执行此操作,我是否正确: class ViewController: UIViewController, UITextFieldDelegate 另外,我正忙于弄清楚如何实现该功能,但如果我完全迷失了会恢复。)
    猜你喜欢
    • 2015-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-09
    相关资源
    最近更新 更多