gpt4 book ai didi

ios - 在 Swift 中将多个参数传递给 UIAlertAction

转载 作者:搜寻专家 更新时间:2023-11-01 07:02:10 25 4
gpt4 key购买 nike

我一直在努力寻找一种将多个参数传递给 UIAlertAction 的方法。以下是我的代码。我想将“源”字符串传递给警报的 joinSelected 操作。

我遇到这样的错误:

Cannot convert value of type '()' to expected argument type '((UIAlertAction) ->

fileprivate func showBetaAlert(source: String)  {
let betaAlert = UIAlertController.betaProgramAlert()
let joinAction = UIAlertAction(title: "Join", style: UIAlertActionStyle.default, handler: joinSelected(alert: <#UIAlertAction#>, source: source))
let cancelAction = UIAlertAction(title: "Cancel", style: UIAlertActionStyle.cancel, handler: cancelSelected)

betaAlert.addAction(cancelAction)
betaAlert.addAction(joinAction)

present(betaAlert, animated: true, completion: nil)

}

fileprivate func joinSelected(alert: UIAlertAction, source: String) {
let betaAlert = UIAlertController.signUpAlert()
let cancelAction = UIAlertAction(title: "Cancel", style: .cancel, handler: dismissEmailAction)
let submitAction = UIAlertAction(title: "Submit", style: .default , handler: { [weak self] _ in
guard let stelf = self else { return }
let email = betaAlert.textFields![0] as UITextField
stelf.submitAction(email: email.text!)
})

betaAlert.addAction(cancelAction)
betaAlert.addAction(submitAction)

present(betaAlert, animated: true, completion: nil)
}

最佳答案

替换这一行:

let joinAction = UIAlertAction(title: "Join", style: UIAlertActionStyle.default, handler: joinSelected(alert: <#UIAlertAction#>, source: source))

与:

let joinAction = UIAlertAction(title: "Join", style: UIAlertActionStyle.default, handler: { [weak self] _ in
joinSelected(source: source)
})

并将 joinSelected 更新为:

fileprivate func joinSelected(source: String) {

关于ios - 在 Swift 中将多个参数传递给 UIAlertAction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50533445/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com