iOS开发拓展篇—CoreLocation简单介绍

一、简介

1.在移动互联网时代,移动app能解决用户的很多生活琐事,比如

(1)导航:去任意陌生的地方

(2)周边:找餐馆、找酒店、找银行、找电影院

2.在上述应用中,都用到了地图和定位功能,在iOS开发中,要想加入这2大功能,必须基于2个框架进行开发

(1)Map Kit :用于地图展示

(2)Core Location :用于地理定位

3.两个热门专业术语

(1)LBS :Location Based Service(基于定位的服务)

(2)SoLoMo :Social Local Mobile(索罗门)

二、CoreLocation框架的使用

1.CoreLocation框架使用前提

(1)导入框架


说明:在Xcode5以后,不再需要我们手动导入

(2)导入主头文件

  #import <CoreLocation/CoreLocation.h>

2.CoreLocation框架使用须知

CoreLocation框架中所有数据类型的前缀都是CL

CoreLocation中使用CLLocationManager对象来做用户定位

三、经纬度等地理信息扫盲

1.示意图



2.本初子午线:穿过英国伦敦格林文治天文台

往东边(右边)走,是东经(E)

往西边(左边)走,是西经(W)

东西经各180°,总共360°

3.赤道:零度维度

往北边(上边)走,是北纬(N)

往南边(下边)走,是南纬(S)

南北纬各90°,总共180°

提示:横跨经度\纬度越大(1° ≈ 111km),表示的范围就越大,在地图上看到的东西就越小

4.我国的经纬度:

(1)中国的经纬度范围

纬度范围:N 3°51′ ~ N 53°33′

经度范围:E 73°33′ ~ E 135°05′

(2)部分城市的经纬度


四、模拟位置

说明:在对程序进行测试的时候,设置手机模拟器的模拟位置(经纬度)

时间: 2024-08-03 15:40:34

iOS开发拓展篇—CoreLocation简单介绍的相关文章

iOS开发拓展篇-XMPP简单介绍

iOS开发拓展篇-XMPP简单介绍 一.即时通讯简单介绍 1.简单说明 即时通讯技术(IM)支持用户在线实时交谈.如果要发送一条信息,用户需要打开一个小窗口,以便让用户及其朋友在其中输入信息并让交谈双方都看到交谈的内容 有许多的IM系统,如AOL IM.Yahoo IM. MSN以及QQ,它们最大的区别在于各自通讯协议的实现,所以即时通讯技术的核心在于它的传输协议 协议用来说明信息在网络上如何传输,如果有了统一的传输协议,那么应当可以实现各个IM之间的直接通讯,为了创建即时通讯的统一标准,目前已

iOS开发拓展篇—UIDynamic(简单介绍)

一.简单介绍 1.什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象 如:重力.弹性碰撞等现象 2.物理引擎的价值 广泛用于游戏开发,经典成功案例是"愤怒的小鸟" 让开发人员可以在远离物理学公式的情况下,实现炫酷的物理仿真效果 提高了游戏开发效率,产生更多优秀好玩的物理仿真游戏 3.知名的2D物理引擎 Box2d Chipmunk 二.使用步骤 要想使用UIDynamic来实现物

iOS开发UI篇—UIWindow简单介绍

一.简单介绍 UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow iOS程序启动完毕后,创建的第一个视图控件就是UIWindow,接着创建控制器的view,最后将控制器的view添加到UIWindow上,于是控制器的view就显示在屏幕上了 一个iOS程序之所以能显示到屏幕上,完全是因为它有UIWindow.也就说,没有UIWindow,就看不见任何UI界面 补充:UIWindow是创建的第一个视图控件(创建的第一个对象是UIapplication)如下图:

iOS开发数据库篇—SQLite简单介绍

一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1)归档:NSCodeing.NSKeyedArchiver (2)偏好设置:NSUserDefaults (3)Plist存储:writeToFile 提示:上述三种方法都有一个致命的缺点,那就是都无法存储大批量的数据,有性能的问题. 举例:使用归档 两个问题: (1)数据的存取都必须是完整的,要求写入的时候要一次性写入,读取的时候要一次性

ios开发UI篇—Kvc简单介绍

一.KVC简单介绍 KVC key valued coding 键值编码 KVC通过键值间接编码 补充: 与KVC相对的时KVO,即key valued observer 键值观察.监听某一个模型的属性,只要模型属性的值一变化就通知你. 二.使用KVC 1.KVC基本使用介绍 (1)代码示例: 新建一个命令行项目,用以演示KVC的用法 完成之后为项目添加一个Person类. 为Person类添加两个属性(name和age),注意这两个属性的类型. 1 #import <Foundation/Fo

iOS开发UI篇—popoverController简单介绍

一.简单介绍 1.什么是UIPopoverController 是iPad开发中常见的一种控制器(在iPhone上不允许使用) 跟其他控制器不一样的是,它直接继承自NSObject,并非继承自UIViewController 它只占用部分屏幕空间来呈现信息,而且显示在屏幕的最前面 2.使用步骤 要想显示一个UIPopoverController,需要经过下列步骤 (1)设置内容控制器 由于UIPopoverController直接继承自NSObject,不具备可视化的能力.因此UIPopover

iOS开发UI篇—Quartz2D简单介绍

一.什么是Quartz2D Quartz 2D是⼀个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件 二.Quartz2D在iOS开发中的价值 为了便于搭建美观的UI界面,iOS提供了UIKit框架,⾥⾯有各种各样的UI控件 UILabel:显⽰文字 UIImageView:显示图片 UIButton:同时显示图片和⽂字(能点击) 利⽤UIKi

iOS开发多线程篇—多线程简单介绍

一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcode,系统就会分别启动2个进程 通过"活动监视器"可以查看Mac系统中所开启的进程 2.什么是线程 1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程) 线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行 比如使用酷狗播放音乐.使用迅雷下载电影,都需要在线程中执行 3.线程的串行 1个线程中任务的执

iOS开发UI篇—UITabBarController简单介绍

一.简单介绍 UITabBarController和UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型的例子就是QQ.微信等应⽤. 二.UITabBarController的使用 1.使用步骤: (1)初始化UITabBarController (2)设置UIWindow的rootViewController为UITabBarController (3)创建相应的子控制器(viewcontroller)