Im just wondering whether there is a way to call a method where i build the name of the method on the fly with a string.
e.g. I have a method called loaddata
You can use the objc_msgSend function. It takes two parameters, the receiver and the selector to send to it:
objc_msgSend(self, someSelector);
You'll need to turn your string into the appropriate selector using NSSelectorFromString
:
NSString *message = [self getSomeSelectorName];
objc_msgSend(self, message);
The method also takes a variable number of arguments, so you can send messages with any number of arguments.
NSString *message = [self getSomeSelectorNameWithManyArguments];
objc_msgSend(self, message, arg1, arg2, arg3, arg4);
You can try something like
SEL s = NSSelectorFromString(selectorName);
[anObject performSelector:s];