2014-10-04 160 views
0

有没有什么办法以编程方式添加一个按钮,当点击它时会运行一个按钮?将使用什么代码?以编程方式添加按钮

我是新来的swift和新语言,我习惯于在故事板中添加一个按钮并从那里运行IBAction。

回答

1

您可以使用SPSprintNode作为按钮并在触摸功能中激活它。或者,您可以使用按钮类为您完成工作。如果你使用ObjectiveC,Github上有一些很棒的按钮类例子。如果你使用Swift,他们有点难以发现。 第三个也是最后一个选项是你可以使用标签,然后告诉触摸来调用按钮功能。这里有一个例子:

 var button = SKSpriteNode(imageNamed: "button.png") 
    button.position = CGPoint(x: self.size.width * 0.5, y: self.size.height * 0.5)//center 
    button.alpha = 1.0//optional 
    addChild(button) 

然后在你倒是贝京把这个:

 for touch in touches { 
     let touchLocation = touch.locationInNode(self) 
      if (CGRectContainsPoint(button.frame, touchLocation)) { 
       button.alpha = 0.5//optional 
       //call function to perform something here. 

      } 

}

+0

我真的没有看到任何提及他使用'SpriteKit' ... – Oxcug 2014-12-24 04:01:28

0

对方回答使用SpriteKit,如果你不使用它,你这是怎么会做:

在你UIViewController子类:

func whateverFuncYouWantLikeViewDidLoad() { 
    let button = UIButton(frame: CGRect(x: <#x#>, y: <#y#>, width: <#w#>, height: <#h#>) 
    button.addTarget(self, "someSelector", .TouchUpInside) 
    addSubview(button) 
} 

func someSelector() { 
    println("that tickles!") 
} 
相关问题