7.12 Selektoren aus Strings erzeugen

Gehen wir einen Schritt zurück und sehen wir uns den Text des Buttons noch einmal genau an. Wenn dieser „Personalize“ lautet, rufen wir die Methode personalize auf, und wenn er „Generalize“ lautet, die Methode generalize.

Es wäre nett, wenn wir den Titel des Buttons nehmen, in Kleinbuchstaben umwandeln und als Name der aufzurufenden Methode verwenden könnten. Da sich der Wert zur Laufzeit ändert, nutzen wir die Funktion NSSelectorFromString() so:

NSSelectorFromString([[self.button title] lowercaseString]);

Das liefert uns einen Selektor zurück, was man sich als formalen Namen der Methode vorstellen kann. Wir rufen die Methode mit diesem Namen auf, indem wir die Nachricht performSelector: an self senden und dabei ...

Get Cocoa-Programmierung 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.