内容简介:玩转 iOS 开发:iOS 10 新特性《Measurement》
文章分享至我的个人技术博客: https://cainrun.github.io/14975320210226.html
单位换算
单位换算其实在iOS开发中, 一直是一个问题, 虽然在大部分 App
里不一定会遇到换算, 但在一些专业级的App里, 比如导航, 测量, 计算, 汽车辅助类等 App
就蛋疼了, 因为官方并没有提供这类的 API
, 基本上都是自己写, 或者是集成第三方库.
苹果爸爸为了再一次完善 API
, 在 Foundation
库里加了这么一个叫做 Measurement
的库, 就是为了解决单位换算的问题.
这里的项目是 Objective-C
版本的, 如果喜欢 Swift
版本的话, 可以到 这里 去查看.
创建项目
由于这里要讲的东西很简单, 我就不过多的复杂化直接看代码好了:
// 初始化一个秒数的基数 NSMeasurement *seconds = [[NSMeasurement alloc] initWithDoubleValue:666 unit:NSUnitDuration.seconds]; // 转换为分钟 NSMeasurement *minutes = [seconds measurementByConvertingToUnit:NSUnitDuration.minutes]; // 转换为小时 NSMeasurement *hours = [seconds measurementByConvertingToUnit:NSUnitDuration.hours]; NSString *secondsString = [NSString stringWithFormat:@"%.2f 秒", seconds.doubleValue]; NSString *minutesString = [NSString stringWithFormat:@"%.2f 分钟", minutes.doubleValue]; NSString *hoursString = [NSString stringWithFormat:@"%.2f 小时", hours.doubleValue];
UI
的代码我就不贴上来了, 大伙可以去项目里自己去看看, 整体效果就酱紫:
支持换算单位的类型
- NSDimension 维度
- NSUnitAcceleration 每秒/平方米
- NSUnitAngle 角度
- NSUnitArea 平方米
- NSUnitConcentrationMass 每克/升
- NSUnitDispersion 百万分之
- NSUnitDuration 秒
- NSUnitElectricCharge 库仑
- NSUnitElectricCurrent 安培
- NSUnitElectricPotentialDifference 伏
- NSUnitElectricResistance 欧姆
- NSUnitEnergy 焦耳
- NSUnitFrequency 赫兹
- NSUnitFuelEfficiency 升/每100公里
- NSUnitLength 米
- NSUnitIlluminance 公斤
- NSUnitPower 美国瓦茨
- NSUnitPressure 牛顿/每平方米
- NSUnitSpeed 秒/米
- NSUnitTemperature 开尔文
- NSUnitVolume 升
总结
苹果爸爸在这个库里提供了 170
多种不同的单位换算, 我这里只是用了一丢丢, 更多的方法有待各位去挖掘, 如果想了解更多的话, 可以去看看WWDC 2016的视频讲解.
工程地址
项目地址: https://github.com/CainRun/iOS-10-Characteristic/tree/master/7.Measurement
最后
以上所述就是小编给大家介绍的《玩转 iOS 开发:iOS 10 新特性《Measurement》》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Chrome 72 开发者工具新特性
- 基于 Kotlin 特性开发的有限状态机
- PyQt 5 开发之旅之 OpenCV 的 GUI 特性
- 前端开发不得不知的ES6十大新特性
- 每个开发者都应该了解的一些C++特性
- 玩转 iOS 开发:iOS 10 新特性《Xcode Extension》
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
HTTP权威指南
David Gourley、Brian Totty / 陈涓、赵振平 / 人民邮电出版社 / 2012-9 / 109.00元
超文本转移协议(Hypertext Transfer Protocol,HTTP)是在万维网上进行通信时所使用的协议方案。HTTP有很多应用,但最著名的是用于web浏览器和web服务器之间的双工通信。 HTTP起初是一个简单的协议,因此你可能会认为关于这个协议没有太多好 说的。但现在,你手上拿着的是却一本两磅重 的书。如果你对我们怎么会写出一本650页 的关于HTTP的书感到奇怪的话,可以去......一起来看看 《HTTP权威指南》 这本书的介绍吧!