Как конвертировать "SEL" и "ID" в NSString? - PullRequest
36 голосов
/ 20 декабря 2010
id parent;
SEL selector;

// lot's of code...

if ([parent respondsToSelector:selector]) {

}
else {
    // This doesn't work:
    NSString *errorMessage = [NSString stringWithFormat:@"%@ in class %@ doesn't exist!", selector, parent];
}

Как преобразовать "SEL" и "id" в строку?

1 Ответ

84 голосов
/ 20 декабря 2010

Вызовите NSStringFromSelector(), передав свой селектор в качестве аргумента для получения строки селектора, и используйте [parent class] для класса объекта parent:

NSString *errorMessage = [NSString stringWithFormat:@"%@ in class %@ doesn't exist!",
    NSStringFromSelector(selector), 
    [parent class]];
...