按钮单击后更新标签

时间:2015-03-18 00:32:42

标签: ios iphone swift

import UIKit

class ViewController: UIViewController {

@IBOutlet var myLabel : UILabel!


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.
}

@IBAction func buttonTapped(theButton: UIButton) {
    println(theButton.titleLabel!.text!)
    myLabel.text = " Hello"
}

}

我在故事板上有一个按钮和一个标签。链接从视图控制器到标签,从按钮到视图控制器。此代码编译但标签的文本未更新。想法?

2 个答案:

答案 0 :(得分:0)

你的IBOutlet需要面前弱势

@IBOutlet weak var myLabel: UILabel!

您的代码是正确的。跑得很好。除此之外,我会检查您的IBOutlet和IBAction的链接。

要检查的一些简单事项是:

  1. @IBOutlet@IBAction旁边的线条左侧应该有小圆圈。应填写这些圆圈。如果不填写,则说明它们没有正确链接。要链接它们,请并排查看故事板和swift文件,然后分别从标签或按钮拖动到插座或操作。
  2. 在故事板中,按住ctrl并单击标签。您应该看到myLabel - View Controller右侧有一个填充的圆圈。现在按住ctrl并单击按钮。您应该看到Touch Up Inside - View Controller buttonTapped:右侧有一个填充的圆圈。

答案 1 :(得分:0)

我假设您的IBAction与按钮之间的连接无效,请按照以下步骤创建自己的连接。

  1. 打开您的项目。寻找这些按钮: Step 1点击双圈。
  2. 这将打开第二个编辑器窗口。导航并打开ViewController文件和Interface Builder文件。
  3. 按" Control"并拖动到.swift文件。鼠标所在的位置应出现蓝线。释放。
  4. 您应该会看到一个新的弹出窗口,第一行显示" Connection"。从" Outlet"更改它到"行动"。
  5. 为您的行动命名。
  6. 在IBAction块中,放置myLabel.text = "Your text here."