从textField接收用户输入后,在标签中显示算法的结果

时间:2016-10-28 22:40:42

标签: swift xcode8 swift2.3

这是我的代码:

//MARK: Actions
@IBAction func Enter(sender: UIButton)
{
    var quantifiedMonth = 0
    let sleepMonth = String(EditCalendarTextBox.text)
    if sleepMonth == "December"
    {
        quantifiedMonth = 12
    }

    EditCalendarLabel.text = String(quantifiedMonth)

}

在我的应用程序中有一个textBox。用户输入一个月的名称。然后我创建一个与月份数相对应的整数变量,在本例中为12月,即12个月。然后我希望Label显示该数字12,但由于某种原因,“if”语句被跳过,标签显示“0”,就像没有操纵用户输入一样。谢谢您的帮助。 Screenshot of my phone with label displaying '0' instead of '12'

2 个答案:

答案 0 :(得分:0)

您在quantifiedMonthString语句正文的scope中创建if,然后离开该范围(近大括号),然后尝试在它消失后使用它。< / p>

if someCondition {
    let x = 1
}
let xCopy = x

在上面的示例中,xif条件体内的等于1的整数。在结束括号后,x不再存在,因为我们已经离开其范围,因此下一行是错误(因为此外部范围中的符号x未知)

答案 1 :(得分:0)

这是我的修复:

//MARK: Actions
@IBAction func Enter(sender: UIButton)
{

    var quantifiedMonth = 0
    if EditCalendarTextBox.text == "December"
    {
        quantifiedMonth = 12
    }

    EditCalendarLabel.text = String(quantifiedMonth)