проверять динамически, отвечает ли класс на селектор посредством RespondsToSelector:

Я ищу возможность динамически проверять, реагирует ли класс на селектор.

Например, у меня есть строгая схема имен методов в классе вроде "parse [CountryCode] Adress".

Я пробовал что-то вроде этого:

SEL selector = NSSelectorFromString([NSString stringWithFormat:@"parse%@Address", @"DE"]);

if ([CountryTraderDataParser respondsToSelector:@selector(selector)]) {
    NSLog(@"responds to");
    [CountryTraderDataParser selector];
}

, но это не сработало.

С трудом закодированная строка [CountryTraderDataParser responseToSelector: @selector (parseDEAddress:)] этот пример работает нормально.

Есть ли другой / лучший способ заставить этот пример работать?

5
задан Aron Cederholm 18 January 2019 в 08:13
поделиться