【问题标题】:Swift dynamic button createSwift动态按钮创建
【发布时间】:2017-06-01 08:33:06
【问题描述】:

我是 swift 的新手。 我通过使用以下代码在同一个 viewController 中按下另一个按钮来创建动态按钮:

@IBAction func yenibtn(sender: AnyObject) {

    let btn = UIButton()
    btn.frame = CGRectMake(10, 10, 50, 50)  //set frame
    btn.setTitle("btn", forState: .Normal)  //set button title
    btn.setTitleColor(UIColor.redColor(), forState: .Normal) //set button title color
    btn.backgroundColor = UIColor.greenColor() //set button background color
    btn.tag = 1 // set button tag
    btn.addTarget(self, action: "btnclicked:", forControlEvents: .TouchUpInside) //add button action
    self.view.addSubview(btn) //add button in view



}
func clickMe(sender:UIButton!)
{
    print("Button Clicked")

}

我创建了第二个 viewController 并通过 performSegueWithIdentifier 函数导航。当我回调前一个控制器时,动态对象消失了。有没有办法在重新加载前一个 ViewController 期间保留动态按钮?

【问题讨论】:

    标签: swift xcode7 xcode8


    【解决方案1】:

    就用这个吧:

       var btn:UIButton!
    @IBAction func yenibtn(sender: AnyObject) {
    btn= UIButton()
     btn.frame = CGRectMake(10, 10, 50, 50)  //set frame
    ///... your code
    }
    

    更新

    在第二个视图控制器中使用你的代码来关闭

     @IBAction func basgeri(sender: AnyObject) {
    
            performSegueWithIdentifier("bir", sender: self)
        }
    

    想“我正在关闭视图控制器”,但你错了!你创建了一个新的 ViewController!你没有回到上一个!

    要修复它,请使用:

     @IBAction func basgeri(sender: AnyObject) {
    
    presentingViewController?.dismissViewControllerAnimated(true, completion: nil)
    
        }
    

    【讨论】:

    • 我给出错误:“致命错误:在展开可选值时意外发现 nil”
    • 当你看到这个?
    • 当我按下按钮运行 func yenibtn() 函数来创建另一个按钮
    • 它不允许我在这里编写所有代码,但基本上是两个视图控制器,其中一个有两个按钮,一个导航第二个视图控制器,另一个是动态创建另一个按钮。第二个视图控制器有一个按钮可以返回到前一个视图控制器
    • @AlexGuba ,确认是否有帮助
    猜你喜欢
    • 2014-11-08
    • 2020-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-28
    • 1970-01-01
    相关资源
    最近更新 更多