iOS:格式化和本地化计时器时间计数器

iOS:格式化和本地化计时器时间计数器,第1张

概述在我的项目中,我使用NSDateFormatter来正确格式化我的应用程序中显示的日期.更具体地说,这是一个例子: English: 12:34 amArabic: ١٢:٣٤ ص 看起来很棒,显示我需要的数字.但是,我有一个时间计数器/计时器在应用程序中向上/向下计数: 01:31:22 // HH:mm:ss 我如何正确本地化此计数器显示为: ٠١:٣١:٢٢ 我检查了NSDateForma 在我的项目中,我使用NSDateFormatter来正确格式化我的应用程序中显示的日期.更具体地说,这是一个例子:

English: 12:34 amarabic: ١٢:٣٤ ص

看起来很棒,显示我需要的数字.但是,我有一个时间计数器/计时器在应用程序中向上/向下计数:

01:31:22 // HH:mm:ss

我如何正确本地化此计数器显示为:

٠١:٣١:٢٢

我检查了NSDateFormatter,但据我所知,它并没有真正代表这个特殊用例. NSNumberFormatter似乎适用于货币和百分比.

为什么NSDateFormatter没有意义:

因为它有NSTimeZone属性,并且有am / pm后缀,当我们想要使用计数器时它们都是无用的.

解决方法 就在那时,我想我有适合你的东西.我已经创建了一个基本的NSFormatter子类,它可以帮到你.所有你需要做的,它提供了一个包含NSTimeInterval的NSNumber.

.h和.m可在此处获取:https://github.com/WDUK/WDCountdownFormatter

这里有一些使用它的示例代码,是的,它应该尊重locales.

WDCountdownFormatter* format = [[WDCountdownFormatter alloc] init];NSLog(@"70 - %@",[format stringForObjectValue:@(70)]);NSLog(@"179 - %@",[format stringForObjectValue:@(179)]);NSLog(@"-10 - %@",[format stringForObjectValue:@(-10)]); // InvalID,will return nilNSLog(@"0 - %@",[format stringForObjectValue:@(0)]);NSLog(@"9827193 - %@",[format stringForObjectValue:@(9827193)]);NSLog(@"1 - %@",[format stringForObjectValue:@(1)]);

产生

// UK English2012-11-28 23:11:11.453 StackOverflow[28687:c07] 70 - 00:01:102012-11-28 23:11:11.456 StackOverflow[28687:c07] 179 - 00:02:592012-11-28 23:11:11.457 StackOverflow[28687:c07] -10 - (null)2012-11-28 23:11:11.458 StackOverflow[28687:c07] 0 - 00:00:002012-11-28 23:11:11.458 StackOverflow[28687:c07] 9827193 - 2729:46:332012-11-28 23:11:11.459 StackOverflow[28687:c07] 1 - 00:00:01// Egyptian arabic2012-11-28 22:59:54.057 StackOverflow[28400:c07] 70 - ٠٠:٠١:١٠2012-11-28 22:59:54.659 StackOverflow[28400:c07] 179 - ٠٠:٠٢:٥٩2012-11-28 22:59:55.473 StackOverflow[28400:c07] -10 - (null)2012-11-28 22:59:56.464 StackOverflow[28400:c07] 0 - ٠٠:٠٠:٠٠2012-11-28 22:59:57.311 StackOverflow[28400:c07] 9827193 - ٢٧٢٩:٤٦:٣٣2012-11-28 23:10:36.657 StackOverflow[28400:c07] 1 - ٠٠:٠٠:٠١
总结

以上是内存溢出为你收集整理的iOS:格式化和本地化计时器/时间计数器全部内容,希望文章能够帮你解决iOS:格式化和本地化计时器/时间计数器所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1035969.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存