启用S​​WIFT按钮的用户交互

时间:2016-03-28 05:01:28

标签: swift uiview ibaction user-interaction

好的,我们假设下面创建的按钮显示为灰色且用户交互已禁用。

如何从其他任何位置启用该按钮。

我知道如何从按钮功能内部禁用按钮,sender.enabled = false,但我不想从那里禁用它。

我想从按钮功能外部重新启用用户交互。

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

    @IBAction func loadButton(sender: UIButton) {
      //i wan to enable interaction of this button via override func and         NSUserDefaults
    }
}

1 个答案:

答案 0 :(得分:1)

在iOS和OS X开发中,您有所谓的function the_func { local +x MY_VAR="new value" my -child -process # === in zsh: $MY_VAR is undefined # === in bash: $MY_VAR="original" } export MY_VAR="original" the_func ,它们是指向UI元素的变量。您可以阅读有关他们的更多信息here

要申报出口,请在变量前加上outlets,如下所示:

@IBOutlet

然后您需要将插座连接到@IBOutlet weak var button: UIButton!文件中的按钮。这可以通过多种方式完成,但如果你已经声明了如上所述的变量,你可以:

  1. 转到您的故事板
  2. 在文档大纲中按住控制按钮
  3. 在按住控制按钮的同时,从xibfiles owner拖动到ViewController,您想要连接到
  4. 选择您想要连接的插座(在这种情况下为UIButton
  5. 如图所示

    One way to connect an outlet

    一旦到位,您可以在代码中自由使用启用按钮(以及更多内容),例如:

    button

    您可以阅读有关IBOutlets here

    的更多信息

    这里是another way to connect outlets(这就是我更喜欢连接插座的方式,你可以一次定义和连接)

    希望有所帮助