替换uilabel字符串中的所有阿拉伯数字



我有这样的Nstring:"2015/18/02 4:19"

有可能像这样把uilabel的输出改成印地语或阿拉伯语吗?

:"٤:١٩"

当我查看时,苹果文档中有三种类型的格式化程序:

NSNumberFormatter,NSDateFormatter,NSLocalizedString。

我应该把这个字符串转换成日期或数字,然后用改变格式吗

这个:

[formatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"ar"]]; 

或者用我的号码创建"Localizable.strings",并设置文本以根据我的进行更改

钥匙?还是有更好的解决方案?

您必须使用一个具有英文数字符号的区域设置标识符。例如:

NSDateFormatter *dateFormatter = [NSDateFormatter new];
dateFormatter.dateFormat = @"EEEE dd MMM | hh:mm a";
dateFormatter.locale = [NSLocale localeWithLocaleIdentifier:@"ar_TN"];
NSLog(@"%@", [dateFormatter stringFromDate:[NSDate date]]);

这将打印:

الخميس 14 جانفي | 02:02 م

有关iOS支持的地区的完整日期列表,请查看以下内容:

https://gist.github.com/devinfoley/5980066

最新更新