我已经在swift 2.0中以编程方式创建了一个名为noBtn的UIButton,它表示UIViewController被解雇了。当用户单击按钮时,包含该按钮的视图控制器将关闭。当我转换为swift 3.0时,我不断收到此错误:

  • 'dismiss()'的歧义用法

  • 我尝试将参数添加到dismiss(),但是没有用。这是我没有参数的原始代码。
    noBtn.addTarget(self, action: #selector(SetUpNameViewController.dismiss), for: UIControlEvents.touchUpInside)
    

    最佳答案

    像这样重写。首先,给同一个类一个dismiss方法:

    func dismiss() {
        self.dismiss(animated:true)
    }
    

    其次,将selector更改为#selector(dismiss)

    现在,您的选择器将调用您的dismiss函数,该函数将调用dismiss(animated:completion:),这是您要尝试执行的操作。

    关于ios - 转换为Swift 3.0时在UIButton上歧义使用'dismiss()',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40444470/

    10-12 04:21