菜鸟教程小白 发表于 2022-12-11 17:59:55

ios - 转换为 swift 3.0 时在 UIButton 上使用 'dismiss()' 不明确


                                            <p><p>我在swift 2.0 中以编程方式创建了一个名为<code>noBtn</code> 的UIButton,它表示<code>UIViewController</code> 的解除。当用户单击按钮时,包含该按钮的 ViewController 将关闭。当我转换为 swift 3.0 时,我不断收到此错误:</p>

<ul>
<li>'dismiss()' 的模糊使用</li>
</ul>

<p>我尝试向 <code>dismiss()</code> 添加参数,但没有成功。这是我没有参数的原始代码。 </p>

<pre><code>noBtn.addTarget(self, action: #selector(SetUpNameViewController.dismiss), for: UIControlEvents.touchUpInside)
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>像这样重写。首先,给同一个类一个<code>dismiss</code>方法:</p>

<pre><code>func dismiss() {
    self.dismiss(animated:true)
}
</code></pre>

<p>其次,将你的 <code>selector</code> 改为 <code>#selector(dismiss)</code>。</p>

<p>现在您的选择器将调用您的 <code>dismiss</code> 函数,该函数将调用 <code>dismiss(animated:completion:)</code> 这就是您要执行的操作。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 转换为 swift 3.0 时在 UIButton 上使用&#39;dismiss()&#39; 不明确,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/40444470/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/40444470/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 转换为 swift 3.0 时在 UIButton 上使用 &#39;dismiss()&#39; 不明确