> On 23 Sep 2016, at 12:09, Marco S Hyman <[email protected]> wrote:
>
> On Sep 22, 2016, at 9:51 PM, Gerriet M. Denkmann via swift-users
> <[email protected]> wrote:
>>
>> This line (Swift 3):
>> if a.responds(to: Selector(“viewControllers") )
>> creates this warning: Use '#selector' instead of explicitly constructing a
>> 'Selector'
>>
>> Ok. Following this advice I change it to:
>> if a.responds(to: #selector(“viewControllers”))
>
> #selector does not take a string. It takes a method name. This is required
> as the name needs to be mangled/demangled in the conversion between obj-c and
> swift.
>
> You might need the class name, too, e.g. #selector(MyClass.viewControllers)
This might be difficult. viewControllers is a property used in several classes,
e.g. UIPageViewController, UISplitViewController, etc.
Xcode has just given me a new suggestion (probably it noticed that I was not
quite happy with its former hint):
if a.responds(to: #selector(getter:
UINavigationController.viewControllers))
but I do not want to be restricted to this special class.
My a is AnyObject and should be treated as such.
Kind regards,
Gerriet.
_______________________________________________
swift-users mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-users