Próbuję wyodrębnić ciąg (który zawiera liczbę całkowitą) z tablicy, a następnie użyć go jako int w funkcji. Próbuję przekonwertować go na int przy użyciu intValue.
Oto kod, który próbowałem.
NSArray *_returnedArguments = [serverOutput componentsSeparatedByString:@":"];
[_appDelegate loggedIn:usernameField.text:passwordField.text:(int)[[_returnedArguments objectAtIndex:2] intValue]];
Otrzymuję ten błąd:
przekazanie argumentu 3 „loggedIn :::” powoduje, że wskaźnik jest liczbą całkowitą bez rzutowania
Co jest nie tak?
loggedIn:::
metoda, co jest zdecydowanie nie-Objective-C sposobem robienia rzeczy.
loggedIn:::
. Reszta tej deklaracji to tylko nazwy parametrów, a nie część selektora. Idiomatycznie, tak powinno być - (void)loggedIn:(NSString *)tusername password:(NSString *)tpassword userID:(int)userId
. A potem nazwałbyś to jako [_appDelegate userIsLoggedIn:usernameField.text password:passwordField.text userID:[[_returnedArguments objectAtIndex:2] intValue]];
.
(int)
części