<div dir="ltr">#selector is not used with a string, but with an actual reference to a method. If, for instance, you have a protocol MyVC which declares `var viewControllers: ...` then you can use something like #selector(MyVC.viewControllers).<div class="gmail_extra">
<br><div class="gmail_quote">On Thu, Sep 22, 2016 at 9:51 PM, Gerriet M. Denkmann via swift-users <span dir="ltr">&lt;<a href="mailto:swift-users@swift.org" target="_blank">swift-users@swift.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This line (Swift 3):<br>
        if a.responds(to: Selector(“viewControllers&quot;) )<br>
creates this warning: Use &#39;#selector&#39; instead of explicitly constructing a &#39;Selector&#39;<br>
<br>
Ok. Following this advice I change it to:<br>
        if a.responds(to: #selector(“viewControllers&quot;))<br>
and now get an error instead: Argument of ‘#selector&#39; does not refer to an &#39;@objc&#39; method, property, or initializer<br>
<br>
Why do I get punished for following Xcode’s advice?<br>
<br>
Gerriet.<br>
<br>
______________________________<wbr>_________________<br>
swift-users mailing list<br>
<a href="mailto:swift-users@swift.org">swift-users@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-users" rel="noreferrer" target="_blank">https://lists.swift.org/<wbr>mailman/listinfo/swift-users</a><br>
</blockquote></div><br></div></div>