On May 8, 2013, at 8:51 AM, Diederik Meijer | Ten Horses 
<diede...@tenhorses.com> wrote:

> I am implementing a UIRefreshControl in an app that runs on iOS 5.1 or higher 
> and want to test if the device is running iOS 6, because this is an iOS 6 
> feature.
> 
> I'd like to avoid detecting the iOS version in runtime and use a 
> respondsToSelector route instead.
> 
> I am getting no compiler error on this codeline, so my first guess is this 
> works, but I'd like to check..
> 
>    if ([self respondsToSelector:@selector(setRefreshControl)]) [self 
> setUpRefreshControl];
> 
> Has anybody done this and van they tell me if the above works fine, or, 
> alternatively, how to do this?

If your intent is to check to see if the UIRefreshControl class exists at 
runtime, then do this instead:

if (NSClassFromString(@"UIRefreshControl"))

The line you wrote above checks to see if the method "setRefreshControl" exists 
inside the method's own class. I doubt that's your intention, especially since 
set-methods typically take an argument, and if the method takes an argument, 
then you would need to use "setRefreshControl:" instead.

Nick Zitzmann
<http://www.chronosnet.com/>


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to