2011-01-15 27 views
0

Ich möchte eine Zeichenfolge durchlaufen und jedes Zeichen verwenden.NSString Fehler stürzt App

int i = 0; 
NSString *saveName = [[NSUserDefaults standardUserDefaults] 
    stringForKey:@"userName"]; 

for (i; i < [saveName length]; i++) { 
NSMutableString *temp = [NSMutableString stringWithString:[saveName characterAtIndex:i]]; 
[self setUserName:temp]; 
} 

Ich erhalte eine

Warnung: Übergabe des Arguments 1 von 'stringWithString:' macht Zeiger von Ganzzahl ohne Guss

, die die App abstürzt.

Was mache ich falsch? Danke

Antwort

4

Sie rufen -stringWithString:, die ein NSString * Argument erwartet. Aber dieser Aufruf:

[saveName characterAtIndex:i] 

keine NSString zurückkehren, es ist ein unichar zurückgibt. Versuchen Sie:

[saveName substringWithRange:NSMakeRange(i, 1)] 

gibt es stattdessen das Zeichen "als String" zu erhalten.

+0

Danke dafür. hatte keine Ahnung, dass es unichar zurückkam. – jarryd