1.20. Ustalenie, czy dostępna jest dana metoda klasy lub egzemplarza

Problem

W swoim środowisku programistycznym posiadasz najnowszą wersję SDK, ale chcesz zapewnić obsługę także urządzeń działających pod kontrolą starszej wersji systemu iOS i API.

Rozwiązanie

Użyj metody instancesRespondToSelector: klasy NSObject w celu określenia, czy dany selektor istnieje w egzemplarzu klasy.

Podpowiedź

Selektor to nazwa metody bez typów danych parametrów. Przykładowo w przedstawionej poniżej deklaracji metody:

- (BOOL)doesString:(NSString *)paramNeedle
     existInString:(NSString *)paramHaystack;

jej selektorem będzie doesString:existInString:.

W celu ustalenia, czy klasa odpowiada na daną metodę klasy, użyj metody respondsToSelector: danej klasy. Tę samą metodę można ...

Get iOS 5. Programowanie. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.