以编程方式切换UIAlert控制器 [英] Switch in UIAlert Controller programatically

查看:137
本文介绍了以编程方式切换UIAlert控制器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在swift中创建一个注册对话框,其中有3个文本字段和一个Switch,我成功添加了三个文本字段两个Alert。以下代码显示相同的内容。

I am creating an registration dialog in swift with 3 text field and one Switch and I successfully add three text field two the Alert. The following code shows the same.

 let alertController = UIAlertController(title: "Register", message: "", preferredStyle: .Alert)
    let cancelAction = UIAlertAction(title: "Cancel", style: .Cancel) { (action) in
        // ...

        exit(0)
    }
    alertController.addAction(cancelAction)

    let OKAction = UIAlertAction(title: "Sign UP", style: .Default) { (action) in
        // ...
        let name0 = alertController.textFields![0] as UITextField
        print("Text field: \(name0.text)")

        let email1 = alertController.textFields![1] as UITextField
        print("Text field: \(email1.text)")

        let company2 = alertController.textFields![2] as UITextField
        print("Text field: \(company2.text)")


    }

    alertController.addAction(OKAction)

    alertController.addTextFieldWithConfigurationHandler { (textField) in
        textField.placeholder = "Name"
        textField.keyboardType = .EmailAddress
    }

    alertController.addTextFieldWithConfigurationHandler { (textField) in
        textField.placeholder = "Email"
        textField.secureTextEntry = false
    }

    alertController.addTextFieldWithConfigurationHandler { (textField) in
        textField.placeholder = "Company"
        textField.secureTextEntry = false
    }


            self.presentViewController(alertController, animated: true) {
                // ...
            }

现在我需要以编程方式将一个开关添加到Alert View。我们在Swift2中这样做。有可能吗?,我是Swift的新手。

Now I need to add a switch programmatically to the Alert View.We are doing this in Swift2. Is it possible?, i am new to Swift.

推荐答案

这可能对你有帮助。

在<$ c $之后的上面代码中添加此方法调用 alertController.view.addSubview(createSwitch()) c> alertController.addAction(OKAction)。

Add this method call alertController.view.addSubview(createSwitch()) in above code after alertController.addAction(OKAction).

func createSwitch () -> UISwitch{


    let switchControl = UISwitch(frame:CGRectMake(10, 20, 0, 0));
    switchControl.on = true
    switchControl.setOn(true, animated: false);
    switchControl.addTarget(self, action: "switchValueDidChange:", forControlEvents: .ValueChanged);
    return switchControl
}

func switchValueDidChange(sender:UISwitch!){

    print("Switch Value : \(sender.on))")
}

OutPut:

这篇关于以编程方式切换UIAlert控制器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆