【问题标题】:Adding Button programmatically以编程方式添加按钮
【发布时间】:2017-12-09 01:32:58
【问题描述】:

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

我是 swift 和新语言的新手,我习惯于在情节提要中添加一个按钮并从那里运行 IBAction。

【问题讨论】:

    标签: ios xcode swift


    【解决方案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)
    

    然后在你的 Touches Begin 中输入:

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

    }

    【讨论】:

      【解决方案2】:

      另一个答案使用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!")
      }
      

      【讨论】:

        猜你喜欢
        • 2012-06-20
        • 2020-09-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多