Mat*_*tyG 4 cocoa-touch localization nslocalizedstring ios nslocale
在iOS中,如果用户[NSLocale currentLocale]不使用阿拉伯数字(即不是0123456789),我想执行一些特定的功能.我该如何检查这种情况?
不幸的是没有直接属性要检查,但是下面的代码会检查它:
NSCharacterSet *nSet = [NSCharacterSet characterSetWithCharactersInString:@"1234567890"];
NSNumberFormatter *numFmt = [[NSNumberFormatter alloc] init];
NSDecimalNumber *value = [NSDecimalNumber decimalNumberWithString:@"1234567890"];
NSCharacterSet *fSet = [NSCharacterSet characterSetWithCharactersInString:[numFmt stringFromNumber:value]];
if([fSet isSupersetOfSet:nSet]==NO){
NSLog(@"No arabic digits");
}
Run Code Online (Sandbox Code Playgroud)
检查是通过一组数字(nSet)对当前语言环境的语言环境感知格式化程序(numFmt)完成的.该值用于格式化所有数字的数字,可以减少到少于1到0的数字.但是,这也可以作为其他检测的示例.请注意,使用分隔符或千位分组字符不会破坏检测,因为正在使用超集.
| 归档时间: |
|
| 查看次数: |
521 次 |
| 最近记录: |