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()
浙公网安备 33010602011771号