iOS 开发小知识

Foundation 框架:提供oc的基础类(eg:NSObject)、基本数据类型

UIKIt 框架:创建和管理应用程序界面

QuartzCore :提供动画特效及通过硬件进行渲染的能力

CoreGraphics :提供2D绘制的基于C的API

SystemConfiguration :检测当前网络是否可用和硬件设备状态

AVFoundation:提供音频录制和回放的底层API,同时也负责管理音频硬件

CFNetwork 访问和配置网络,像Http、FTP、和Bonjour Services

CoreFoundation:提供抽象的常用数据类型,如Unicode strings、XML、URL等

CoreLocation:使用GPS和WiFi获取位置信息

GameKit:为游戏提供网络功能,点对点互联和游戏中语音交流

Address Book:提供访问用户联系人信息的功能

AddressBookUI:提供一个用户界面,用于显示存储在地址薄中的联系人信息

AudioToolBox :提供音频录制和回放的底层API,同时也负责管理音频硬件

AudioUnit:提供一个接口,让我们的应用程序可以对音频进行处理

MapKit:为应用程序提供内嵌地图的接口

MediaPlayer:提供播放视频和音频的功能

MessageUI:提供视图控制接口用以处理E-mail和短信

OpenGLES 提供动画特效以及通过硬件进行渲染的能力

StoreKit:为应用程序提供在程序运行中消费的支持

iOS 系统架构

iOS是基于UNIX的,比较稳定

iOS 的系统架构可分为四个层次(由底层向上)

 1.核心操作系统层:(Core OS) 它包括内存管理、文件管理、电源管理以及一些其他的操作系统任务。它可以直接和硬件设备进行交互。

 2.核心服务层(Core Services) 我们可以通过它来访问iOS的一些服务,比如网络连接、文件访问、数据库、用户定位等。

 3.媒体层(Media) 通过它我们可以在应用程序中使用各种媒体文件,进行音频于视频的录制,图形的绘制,以及制作基础的动画效果。

 4.可触摸层(CoCoa Touch) 它负责用户在iOS设备上的用户触摸交互操作。

-------

浮点数求绝对值 fabs(x)

整数求绝对值abs(x)

if( fabs(a-b) < FLT_EPSILON) 判断两个float数是否相等

if( fabs(a-b) < DBL_EPSILON) 判断两个Double数是否相等

--------

关于屏幕像素问题 

ios中的控件的坐标是以一个像素为基本单位的,如果坐标精确度小于一个像素(如0.5个像素)会导致控件重影,所以坐标要去正roundf() 

posted on 2015-10-17 11:16  AN_绝非儿戏  阅读(181)  评论(0)    收藏  举报

导航