我在让nsnumberFormatter正常工作时遇到了一些问题。
我正在用三个20框架在IOS4中编译。
所有nsnumberFormatter选择器都需要一个名为ns_的东西,作为选择器上的第二个参数:
[numberFormatter setCurrencyGroupingSeparator:(NSString *)string __AVAILABILITY_INTERNAL__IPHONE_2:(int)_0];
我不知道我应该如何处理第二个参数。我试过了:
[numberFormatter setCurrencyGroupingSeparator:@"," __AVAILABILITY_INTERNAL__IPHONE_2:2]; // Warning: NSNumberFormatter' may not respond to '-setCurrencyGroupingSeparator:__AVAILABILITY_INTERNAL__IPHONE_2:
[numberFormatter setCurrencyGroupingSeparator:@"," __AVAILABILITY_INTERNAL__IPHONE_2:2_0]; //Error: invalid suffix "_0" on integer constant
再重复几次。
如果我没有指定可用的内部iPhone,它不会发出警告并编译良好,但是选择器文本是黑色的,而不是Xcode中的深紫色,就好像它无法识别一样。
以下是完整的代码片段:
NSNumberFormatter *numberFormatter = [[[NSNumberFormatter alloc] init] autorelease];
[numberFormatter setCurrencyGroupingSeparator:@","];
[numberFormatter setUsesGroupingSeparator:YES];
[numberFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
numberString = [NSString stringWithFormat: @"$%@",[numberFormatter stringFromNumber:myNsNumber]]; // myNsNumber is an NSNumber with a value of 10000000
NSLog(@"numberString: %@",numberString); // numberString: (null) | instead of numberString: $10,000,000
我已经搜索过谷歌
_可用性\内部\ iPhone \ 2
和
NSL可用
运气不好。
搜索developer.apple.com只提供iOS 4.0 API差异。
这是三个20的问题吗?有人知道这里发生了什么事吗?或者有什么可用的吗?