swift
chelongfei
这个作者很懒,什么都没留下…
展开
-
Swift - 使用CoreLocation实现定位(经纬度、海拔、速度、距离等)
CoreLocation是iOS中一个提供设备定位的框架。通过这个框架可以实现定位处理,从而获取位置数据,比如经度、纬度、海拔信息等。1,定位精度的设置定位服务管理类CLLocationManager的desiredAccuracy属性表示精准度,有如下6种选择:kCLLocationAccuracyBestForNavigation :精度最高,一般用于导航kCLLoca转载 2015-10-21 14:06:21 · 1065 阅读 · 0 评论 -
【iOS】swift 保持代码优美的10个方法
这篇Swift风格指南与你看到的其他的指南有所不同,此篇指南主要焦点集中在打印和Web展示的可读写上。我们创建此篇风格指南的目的,是为了让我们的图书、教程以及初学者套件中的代码保持优美和一致,即使我们有很多不同的作者共同编写这些图书。 我们的首要目标是一致性,可读性和简洁性。 还在使用Objective-C?也可以参考我们的Objective-C风格指南(中译版)。转载 2015-12-04 13:47:47 · 801 阅读 · 0 评论 -
【iOS】swift 74个Swift标准库函数
本文译自 Swift Standard Library: Documented and undocumented built-in functions in the Swift standard library – the complete list with all 74 functions。我不是原作者,我只是勤劳的翻译工:)文中作者没有提及他是如何发现这么多未在文档中体现的内置函数的,估转载 2015-12-04 13:39:15 · 438 阅读 · 0 评论 -
Swift 性能探索和优化分析
本文首发在 CSDN《程序员》杂志,订阅地址http://dingyue.programmer.com.cn/ 。Apple 在推出 Swift 时就将其冠以先进,安全和高效的新一代编程语言之名。前两点在 Swift 的语法和语言特性中已经表现得淋漓尽致:像是尾随闭包,枚举关联值,可选值和强制的类型安全等都是 Swift 显而易见的优点。但是对于高效一点,就没有那么明显了。在 2014 年转载 2016-03-30 10:41:51 · 375 阅读 · 0 评论 -
【iOS】swift-文字宽度的计算
如图所示,需要sectionView的标题宽度可以动态变化举例说明:只需在tableView的代理方法func tableView(tableView:UITableView, viewForHeaderInSection section:Int) -> UIView? { let view = tableView.dequeueReusableH原创 2016-02-23 14:20:15 · 2356 阅读 · 0 评论 -
iOS App性能优化
iOS App的性能关注点虽然iPhone的机能越来越好,但是app的功能也越来越复杂,性能从来都是移动开发的核心关注点之一。我们说一个app性能好,不是简单指感觉运行速度快,而应该是指应用启动快速、UI反馈响应及时、列表滚动操作流畅、内存使用合理,当然更不能随随便便Crash啦。工程师开发应用时除了在设计上要避免性能“坑”的出现,在实际遇到“坑”时也要能很快定位原因所在。定位性能问题原因转载 2016-03-30 13:52:36 · 541 阅读 · 0 评论 -
Swift 2.2 的新特性
导读:本文来自SwiftGG翻译组,作者@walkingway基于苹果Swift官方博客中Ted Kremenek所撰写的“Swift 2.2 Released!”文章进行了关于Swift 2.2新特性的介绍翻译以及小试牛刀,Swift 2.2虽然是个小版本,但也有许多值得开发者注意的内容。 Swift 2.2 随着 iOS 9.3 一同闪亮登场,相较于 Swift 2.1, 2.2 版转载 2016-03-28 17:01:31 · 371 阅读 · 0 评论 -
【Swift】Runtime动态性分析
Swift是苹果2014年发布的编程开发语言,可与Objective-C共同运行于Mac OS和iOS平台,用于搭建基于苹果平台的应用程序。Swift已经开源,目前最新版本为2.2。我们知道Objective-C是具有动态性的,能够通过runtime API调用和替换任意方法,那Swift也具有这些动态性吗?分析用例我们拿一个纯Swift类和一个继承自NSObject的类来做分析,转载 2016-06-28 18:43:28 · 645 阅读 · 0 评论 -
【Swift】iOS裁剪或者压缩后出现的白边问题
只需要将所有的CGFloat转化为NSInteger即可 func imageScaleSize(newSize:CGSize) -> UIImage{ let width =NSInteger(newSize.width) let height =NSInteger(newSize.height) UIGraphicsB原创 2016-06-15 13:03:19 · 2395 阅读 · 1 评论 -
【Swift】iOS导航栏错乱的原因
#iOS开发高级技巧#导航栏错乱,也就是导航栏的显示效果与内容区不匹配,引发原因很多,其中最重要的有两个原因:1、在viewwillappear,viewwilldisappear两个函数中,设置导航栏显示或隐藏,如果不这么写必现问题,[navigationController setNavigationBarHidden:YES|NO animated:YES]。2、连续调用有动画效转载 2016-06-15 13:09:27 · 1045 阅读 · 0 评论 -
【iOS】swift-如何理解 if let 与guard?
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:黄兢成链接:http://www.zhihu.com/question/36448325/answer/68614858来源:知乎if let 和 guard 只是语法糖,没有也可以,但有了可以使得代码更简洁方便。要理解 if let 和 guard,不妨设想假如没有这两者,代码会怎么写。----转载 2016-01-22 08:57:42 · 816 阅读 · 0 评论 -
【iOS】字号问题
一,ps和pt转换px:相对长度单位。像素(Pixel)。(PS字体)pt:绝对长度单位。点(Point)。(iOS字体)公式如下:pt=(px/96)*72。二,字体间转换1in = 2.54cm = 25.4 mm = 72pt = 6pc具体换算是: Points Pixels Ems Percent 6pt 8px 0.5e转载 2015-12-03 15:07:14 · 422 阅读 · 0 评论 -
【iOS】swift 排序Sort函数用法(包含NSDictionary排序)
用了几分钟做的简单翻译一个例子直接贴代码,不过多解释//这是我们的modelclass imageFile { var fileName = String() var fileID = Int()}//使用var images : [imageFile] = []images.sort({ $0.fileID > $1.fileID })下转载 2015-12-02 10:15:29 · 2041 阅读 · 0 评论 -
【iOS】Swift类的继承、构造方法、析构器等复习
一、继承与重写, 防止重写1.1 基类, 不继承任何类. Swift不想OC或者Java中继承自Object类.定义一个类,不继承任何类,该类就是基类.[java] view plaincopyclass Person1{ //这个Person1就是基类 func eat(){ println(原创 2015-10-22 15:27:00 · 400 阅读 · 0 评论 -
【iOS】Swift ?和 !(详解)
Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:[plain] view plaincopyprint?var stringValue : String //error: va转载 2015-10-26 14:27:59 · 343 阅读 · 0 评论 -
【iOS】swift init构造器
这几天在使用 Swift 重写原来的一个运动社交应用 SportJoin.为什么要重写呢? 首先因为实在找不到设计师给我作图; 其次,我也闲不下来, 想找一些项目做, 所以只好将原来的代码重写了.原来的代码大约是一年半以前写的, 我现在真的不想吐槽当时写的代码有多烂, 有一句话怎么说来着:程序员连自己写的源代码都不想读, 怎么可能看别人写的源代码! 每半年获得的转载 2015-11-11 17:49:27 · 858 阅读 · 0 评论 -
【iOS】Swift LAZY 修饰符和 LAZY 方法
延时加载或者说延时初始化是很常用的优化方法,在构建和生成新的对象的时候,内存分配会在运行时耗费不少时间,如果有一些对象的属性和内容非常复杂的话,这个时间更是不可忽略。另外,有些情况下我们并不会立即用到一个对象的所有属性,而默认情况下初始化时,那些在特定环境下不被使用的存储属性,也一样要被初始化和赋值,也是一种浪费。在其他语言 (包括 Objective-C) 中延时加载的情况是很常见的。我转载 2015-10-28 08:43:04 · 1130 阅读 · 0 评论 -
【iOS】Swift if let 和 if var
if let unwrappedOptional = postDict { print("The optional has a value! It's\(unwrappedOptional)") } else { print("The optional is nil!") }if l原创 2015-10-28 15:15:31 · 1154 阅读 · 0 评论 -
【iOS】Swift GCD-上
尽管Grand Central Dispatch(GCD)已经存在一段时间了,但并非每个人都知道怎么使用它。这是情有可原的,因为并发很棘手,而且GCD本身基于C的API在Swift世界中很刺眼。 在这两篇教程中,你会学到GCD的来龙去脉。第一部分解释了GCD可以做什么和几个基本功能。第二部分,你会学到一些GCD所提供的进阶功能。起步libdispatch是Apple所提供的在I转载 2015-10-30 15:03:41 · 394 阅读 · 0 评论 -
【iOS】Swift GCD-下
欢迎来到本GCD教程的第二同时也是最终部分!在第一部分中,你学到了并发,线程以及GCD的工作原理。通过使用dispatch_barrrier和dispatch_sync,你做到了让PhotoManager单例在读写照片时是线程安全的。除此之外,你用到dispatch_after来提示用户,优化了用户体验。还有,使用dispatch_async异步执行CPU密集型任务,从而为视图控制器初始化转载 2015-10-30 15:04:59 · 554 阅读 · 0 评论 -
【iOS】swift 枚举
枚举语法你可以用enum开始并且用大括号包含整个定义体来定义一个枚举:enum SomeEnumeration { // 在这里定义枚举} 这里有一个例子,定义了一个包含四个方向的罗盘:enum CompassPoint { case North case South case East case West} 枚举中原创 2015-11-30 16:48:18 · 393 阅读 · 0 评论 -
【iOS】swift 让程序挂起后,能在后台继续运行任务
1,程序的挂起和退出由于iOS设备资源有限。当用户点击了home键,或者另一个应用程序启动了。那么原先那个程序便进入后台被挂起,不是退出,只是停止执行代码,同时它的内存被锁定。当应用程序恢复时,它会从停止的位置重新开始。2,如下特殊的应用程序可以在后台长时间的运行(1)在后台播放音频的应用程序可以在任意长的时间内保持活动状态,直到用户开始从另一个App播放音乐为转载 2015-12-02 08:46:30 · 2120 阅读 · 0 评论