嗨,我正在阅读aaron hillegass关于cococa编程的书,我正在做一个他要求我们做的迷你任务。
任务是创建一个打开一个窗口的应用程序,它有一个输入文本字段,一个按钮和一个标签。
当用户输入一些文字并按下按钮时,标签会显示文字和输入文字的长度。
这是我到目前为止所得到的
//retrieve text from textfield
NSString *string = [textFieldInput stringValue];
//retrieve length of text and store in NSInteger called length
NSInteger length = [string length];
//store length in string format
NSString *string_length = [NSString stringWithFormat:@"%d", length];
//join strings
NSString *full_string = [string stringByAppendingString:(@"has ",string_length,@" characters")];
//set label text
[textField setStringValue:full_string];
然而显示实际字符串并显示字符串,而不是string_length。任何建议,我是否以正确的方式解决这个问题?感谢。
答案 0 :(得分:2)
NSString *fullString = [string stringByAppendingFormat:@"has %@ characters", string_length];
答案 1 :(得分:0)
您对stringByAppendingString:
的使用是错误的
如果我理解正确,您正在尝试传递应附加到string
的字符串列表,但该方法只接受一个字符串参数。
您可以尝试以下方法:
NSString* fullString = [string stringByAppendingString:[NSString stringWithFormat:@"%@ %@ %@", @"has ", string_length, @" characters"]];
答案 2 :(得分:0)
//retrieve text from textfield
NSString *string = [textFieldInput stringValue];
NSString *fullString = [string stringByAppendingFormat:@" has %d characters", [string length]];
//set label text
[textField setStringValue:fullString];