相关疑难解决方法(0)

Objective C中的选择器

首先,我不确定我真的明白选择器是什么.根据我的理解,它是方法的名称,您可以将其分配给类型为"SEL"的类,然后运行诸如respondToSelector之类的方法来查看接收器是否实现了该方法.有人可以提供更好的解释吗?

其次,到目前为止,我有以下代码:

NSString *thing = @"Hello, this is Craig";

SEL sel = @selector(lowercaseString:);
NSString *lower = (([thing respondsToSelector:sel]) ? @"YES" : @"NO");
NSLog (@"Responds to lowercaseString: %@", lower);
if ([thing respondsToSelector:sel]) //(lower == @"YES")
    NSLog(@"lowercaseString is: %@", [thing lowercaseString]);
Run Code Online (Sandbox Code Playgroud)

但是,即使thing显然是一种NSString,并且应该响应lowercaseString,我也无法让'respondsToSelector'条件返回"YES"...

objective-c selector

121
推荐指数
4
解决办法
12万
查看次数

标签 统计

objective-c ×1

selector ×1