Swift 动态按钮创建
Swift dynamic button create
我是 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 期间保留动态按钮?
就用这个:
var btn:UIButton!
@IBAction func yenibtn(sender: AnyObject) {
btn= UIButton()
btn.frame = CGRectMake(10, 10, 50, 50) //set frame
///... your code
}
更新
在第二个 viewcontroller 中使用您的代码关闭
@IBAction func basgeri(sender: AnyObject) {
performSegueWithIdentifier("bir", sender: self)
}
思考"I'm closing the viewcontroller",但你错了!您创建了一个新的 ViewController!您不会回到上一个!
要修复它,请使用:
@IBAction func basgeri(sender: AnyObject) {
presentingViewController?.dismissViewControllerAnimated(true, completion: nil)
}
我是 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 期间保留动态按钮?
就用这个:
var btn:UIButton!
@IBAction func yenibtn(sender: AnyObject) {
btn= UIButton()
btn.frame = CGRectMake(10, 10, 50, 50) //set frame
///... your code
}
更新
在第二个 viewcontroller 中使用您的代码关闭
@IBAction func basgeri(sender: AnyObject) {
performSegueWithIdentifier("bir", sender: self)
}
思考"I'm closing the viewcontroller",但你错了!您创建了一个新的 ViewController!您不会回到上一个!
要修复它,请使用:
@IBAction func basgeri(sender: AnyObject) {
presentingViewController?.dismissViewControllerAnimated(true, completion: nil)
}