我在我的应用程序中遇到了一些NSString的困难.基本上,我有一个名为o1string的NSString,它包含值"602".我想在UIAlertView中输出这个以及其他一些文本.
votedmessage = [ NSString stringWithFormat:@"The current standings are as follows:\n\n%@: %@ votes", b1title, o1string ]; UIAlertView *votedAlert = [[UIAlertView alloc] initWithTitle:@"Thank you for voting" message:votedmessage delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
我已经使用了NSLog并验证了NSString中的值肯定是602,而消息中使用的另一个变量(b1title)自己输出正常.当我将o1votes变量添加到警报消息时,我无法弄清楚为什么应用程序崩溃了,是否与在NSString中只保留一个数字的冲突有关?
这是o1string的设置方式.它肯定包含"602",从XML文件中获取.
o1string = [[options objectAtIndex:3] objectForKey: @"votes"]; o1string = [o1string stringByReplacingOccurrencesOfString:@"\n" withString:@""]; o1string = [o1string stringByReplacingOccurrencesOfString:@" " withString:@""];
Chuck.. 6
除非o1string的赋值与创建votedmessage的方法相同(因为你没有说,我假设没有),当你到达votedmessage需要它的代码时它将会消失.
除非您正在使用垃圾收集,否则您需要保留要在当前方法之后保留的对象.有关完整的详细信息,请参阅Objective-C内存管理指南.
除非o1string的赋值与创建votedmessage的方法相同(因为你没有说,我假设没有),当你到达votedmessage需要它的代码时它将会消失.
除非您正在使用垃圾收集,否则您需要保留要在当前方法之后保留的对象.有关完整的详细信息,请参阅Objective-C内存管理指南.