我正在编写一个跟踪某个项目的长度和高度的应用程序。从本质上讲,我想使应用程序支持公制和英制测量系统。我目前的策略是将某些测量数据存储到Core Data中,并提出一个特定的对象,在屏幕上显示数据之前,这些对象将在这两个系统之间进行计算和转换。
然而,由于iOS在本地化方面有很大支持,我想知道是否应该有更好的方法来编写我自己的单位转换器?
答案 0 :(得分:0)
存储metric或imperial中的一个(我个人使用公制),然后为每个建立一个访问者。
- (NSString *)metricUnitsString
{
// format your string.
return formattedString;
}
- (NSString *)imperialUnitsString
{
// convert value to imperial units.
// format your string.
return formattedString;
}
如果要根据用户的区域设置显示字符串,可以查询[NSLocale currentLocale]
并检查NSLocaleMeasurementSystem
的值。
与区域设置关联的测量系统的关键字。该 对应的值是一个包含描述的NSString对象 语言环境使用的度量系统,例如“Metric”或 “U.S。”