微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Swift 3 popup model dialog传递数据

  
    @IBAction func txtPasswordClicked(_ sender: Any) {
        let popupKeyboardVC = storyboard?.instantiateViewController(withIdentifier: "popupKeyboard") as! PopupKeyboardVC
        
        popupKeyboardVC.delegate = self
        //popupKeyboardVC.strSaveText=labelText.text
        
        popupKeyboardVC.modalPresentationStyle = .popover
        if let popoverController = popupKeyboardVC.popoverPresentationController {
            popoverController.sourceView = sender as! UIView
            popoverController.sourceRect = (sender as AnyObject).bounds
            popoverController.permittedArrowDirections = .any
            popoverController.delegate = self
        }
        present(popupKeyboardVC,animated: true,completion: nil)
    }
    
    func saveText(strText: Nsstring) {
        txtPassword.text = strText as String;
    }
    
    // MARK: - UIPopoverPresentationControllerDelegate
    func adaptivePresentationStyleForPresentationController(controller: UIPresentationController!) -> UIModalPresentationStyle {
        return .fullScreen
    }
    
    func presentationController(controller: UIPresentationController!,viewControllerForAdaptivePresentationStyle style: UIModalPresentationStyle) -> UIViewController! {
        return UINavigationController(rootViewController: controller.presentedViewController)
    }


弹出的controller:

protocol SavingViewControllerDelegate
{
func saveText( strText : Nsstring)
}

class PopupKeyboardVC: UIViewController,UITextFieldDelegate{
override func viewDidLoad() {

}
override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // dispose of any resources that can be recreated.
}
@IBOutlet weak var btnDone: UIButton!
var delegate : SavingViewControllerDelegate?

@IBAction func btnDoneClick(_ sender: Any) {
    if (self.delegate) != nil
    {
        delegate?.saveText(strText: "abc")
    }
    self.dismiss(animated: true,completion: nil)
}
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐