UILabel的问题没有像它那样更新

时间:2015-02-21 07:54:21

标签: ios swift

我正在使用Swift创建一个简单的应用程序,告诉您输入的数字是否为素数。我知道逻辑是正确的,但当我运行应用程序并输入一个数字并按下按钮时,我的标签不会像它应该更新。有人能帮助我吗?

import UIKit

class ViewController: UIViewController {




    @IBOutlet weak var number: UITextField!



    @IBOutlet weak var results: UILabel!


    @IBAction func buttonPressed(sender: AnyObject) {

        var numberInt = number.text.toInt()

        if numberInt != nil {

            var unwrappedNumber = numberInt!


            var isPrime = true

            if unwrappedNumber == 1 {

                isPrime = false

            }

            if unwrappedNumber != 2 &&  unwrappedNumber != 1 {

                for var i = 2; i < unwrappedNumber; i++ {


                    if unwrappedNumber % i == 0 {
                        isPrime = false

                    }
                }

            }

            if isPrime == true{

                results.text = "\(unwrappedNumber)Is Prime"
            }else {

                 results.text = "\(unwrappedNumber)Is not Prime"
            }




        }else {

            results.text = "Enter a number"
        }




    }








    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

1 个答案:

答案 0 :(得分:1)

您项目中的问题是您在错误的地方执行错误的操作,例如在您的StoryBoard中右键单击TextField您发现已连接编辑已结束@IBAction func buttonPressed(sender: AnyObject)相关联这个动作。因此,你的行动无效。

现在您的问题的解决方案是通过单击该十字按钮从该textField中删除您的操作连接,它将如下所示:

enter image description here

之后用Run Test按钮连接** buttonPressed **动作,如下所示:

enter image description here

HERE我更新了您的代码。

我建议你在UI上观看一些教程,这样你就可以了解这一切是如何运作的。