使用CLLocationManager定位获取经纬度
定位服务是很多程序中都用到的,主要使用CoreLocation库中的CLLocationManager类和CLLocation类。
实现结果使用弹窗显示,如下图:
实现步骤:
首先,我们需要在Info.plist文件中添加两个字段:
//始终开启定位的[......]
定位服务是很多程序中都用到的,主要使用CoreLocation库中的CLLocationManager类和CLLocation类。
实现结果使用弹窗显示,如下图:
实现步骤:
首先,我们需要在Info.plist文件中添加两个字段:
//始终开启定位的[......]
PhotoPicker是一个官方用OC写的demo(查看),主要功能是使用UIImagePickerController类拍摄一张照片或者从照片库中选择一张照片。
我用Swift语言,重新编写了下。修改了部分细节,项目GIT地址:http://git.oschina.net/lijialo[……]
开启摄像头拍摄视频或者照片,需要使用UIKit中的UIImagePickerController类。
直接用代码+注释方式来看吧:
//开启摄像头 @IBAction func btnRecord(sender: AnyObject) { //第一步,检测摄像头是否可用[......]
都知道,苹果官网的IOS Developer Library是开发者最喜欢用的知识仓库,但由于有时打开它实在太慢了!
但是,我们可以手动下载离线版的!离线的文档,在这里,叫做DocSet,意指文档集合。
下载方法:
1、打开这个官网提供的连接:https://developer[……]
var moviePlayerControl:MPMoviePlayerController! override func viewDidLoad() { super.viewDidLoad() //视频路径 let path = NSBundle.mainBundle()[......]
购买正版:http://item.taobao.com/item.htm?id=45630069705
介绍:http://devtang.com/blog/2015/05/25/can-we-buy-time/
在Xcode中的使用方法:
1、首先安装好Reveal,下载地址[……]
Alamofire是一个使用Swift语言写的一个网络库,操作很简单,结合ObjectMapper、AlamofireObjectMapper,可以轻松的将JSON数据转换为对象类型!
Alamofire:https://github.com/Alamofire/Alamofire
[……]
参考:http://blog.csdn.net/phunxm/article/details/42685597
除了Device需要在网页上添加外,其他三个:Certificates、APPID、ProFiles,我们都可以使用Xcode帮我们自动生成。这里记录下在[……]
1. 删除工程文件夹下的Podfile、Podfile.lock及Pods文件夹
2. 删除xcworkspace文件
3. 使用xcodeproj文件打开工程,删除Frameworks组下的Pods.xcconfig及libPods.a引用
4. 在工程设置中的Build P[……]
在执行pod install命令添加一个库的时候,一直停留在Analyzing dependencies,迟迟没有反应!
因为执行时会升级spec仓库,使得速度慢了不小,有时还会被Qiang,所以,使用下面命令即可忽略升级:
pod install --verbose --no-r[......]
一个标准的网络请求,包含了请求主体(NSURL、NSURLRequest)、请求操作者(NSURLConnection)、数据响应体(text、json、xml等),最后在处理返回的数据时,可能需要使用序列化将数据转换成我们需要的对象。
下面是请求一张二维码图片数据的代码:
priva[......]
多线程安全中,所谓读者写者:一个可变的对象,一个线程正对它修改,这时另个线程也过来了想修改它,同时进行吗?肯定不可以。
所以在多线程安全中,为了解决读者写者的线程安全问题,需要使用dispatch_barrier_async来保护可变对象:
var myArray :[Int][......]
为了尽可能缓解固态盘的读写操作,把最常用的浏览器缓存迁移到外置的存储中,我用的32GB SD卡。
迁移只需要两条命令:
mv ~/Library/Caches/Google/Chrome "/Volumes/OSX SD/ChromeCache" ln -s "/Volumes/OSX[......]
多线程安全中有个概念叫:临界区,意思是有一段代码,它只能被一个线程调用,这段代码就叫临界区。
在单例模式中,我们常常会判断当前类的实例是否已经存在了, 如果已存在那就返回当前的实例,如果不存在就创建一个。
传统操作下,可以使用条件语句判断,但是多线程下就不行了,为了保证当多个线程调用[……]
NSThread类,直接操作线程,适合将一个需要长时间运行的任务放到一个子线程中。
NSThread.detachNewThreadSelector("go", toTarget: self, withObject: nil) private func go(){ print[......]