iPad平台特点
- 大屏幕,分辨率 1024x768;
- 没有固定的方向,必须四个方向都支持;
- 可以外接键盘;
- 可以放置设备,与台式机同步。
iPhone与iPad的共同特点:
- 内存有限
- 同时运行单个程序,并且占满整个屏幕
- 在设置功能里放置程序选项
- 设备方向可以改变
- 最小化的帮助,让用户直接就能看懂
- 程序响应手势而不是鼠标
- 运行源生程序、Web程序或者二者兼备
- 图片深度24位(RGB各8位),另带8位alpha通道,建议使用PNG格式图片
iPad开发基础
如果您曾经开发过iPhone,那么开发iPad对您来说将是一件十分轻松愉快的事情。iPhone和iPad的设备都运行在iPhone OS系统之上,相同的技术,相同的技巧。最大的差别就是屏幕的尺寸了。详细的情况往下看吧!
基础架构 (Core Architecture)
iPhone和iPad的基础架构差不多,仅有小小的差别。
系统级别:
- 只有一个程序在运行,同时程序窗口占满整个窗口;
- 程序应当尽快加载和退出;
- 出于安全原因,每个应用程序都运行在自己的沙盒之内,沙盒包括程序所用的空间和关联文件。程序之间的交互只能通过系统提供的借口;
- 自定义的framewords不备支持。
对于应用程序来说:
- iPad应该同时支持各个方向,不同于iPhone;
- 程序开发语言推荐Objective-C,不过C和C++也可以;
- iPhone能用的类iPad同样能用;
- 内存管理采用(retain/release)引用计数来管理;
- 如果需要,可以另起其它线程,但是关于视图和其它图形的操作应该在主线程上执行。
所有你对iPhone熟悉的特性,对于iPad同样适用,例如:delegation,protocols,Model-View-Controller,target-action,notifications,properties⋯⋯
ViewControllers
和iPhone一样,viewControllers对于iPad也十分重要。一个view controller对应一个view。一般来说,一个view controller's view 填充整个界面,但是有些时候一个view controller 会作为其它view controller的子视图的controller。Navigation和TabBar就是很好的例子。
在iPad程序中,navigation和tabbar controllers依然很棒,但是他们的分量却有所减少。对于一个简单的data sets,你可以使用split view controller。即使是很复杂的程序,navigation和tab bar controllers通常都扮演第二重要的角色,即放置到第二导航部分。
Graphics and Multimedia
native 2D(如:Core Graphics,UIKit,Core Animation),OpenGL ES 2.0同样适用于iPad。
audio播放计数和iPhone开发差不多,Core Audio,AV Foundation 和 OpenAL。
Event Handling
和iPhone相差无几,不过iPhone OS 3.2 还是增加了一些新特性。在此暂不叙述。
设备支持
许多iPhone上的特性,iPad同样支持。
Accelerometers 加速计
Core Location
Maps 地图
Preferences(在程序之中或者在Settings application)
Address Book contacts
External hardware accessories
点对点的蓝牙连接(使用 Game Kit frameword)
iPad的特点:
尽管iPhone和iPad由许多相同的特点,但是iPad有许多新的特性,是你能够开发不同的应用程序。应用这些新特性来开发程序会使你的开发更加游刃有余。
iPhone和iPad的最大区别就是屏幕的尺寸了。而这一变化使得你不得不考虑重新设计你的应用程序的界面了。
对于游戏来说,扩大尺寸就可以了,但是仅仅如此,空间利用便不是很充分。
对于商业软件来说,这应该是你重新设计软件的一个好机会了,利用新的特性重新考虑一下吧。
设计界面新的重要元素:
1,Split views:可以并列显示两个view,适用于基于navigation导航的和“主-从”视图。
2,Popovers:出现在你所有视图的最上面,用来展现操作菜单,多选项和其它一些信息。没有弹出窗口那么生硬。
3,模式窗体提供了一个新的属性:presentation style,可用来设置是覆盖部分window还是所有的window。
4,toolbars可以被放置在view的顶部或底部 。
5,Responder Objects现在支持custom input views。(简单说就是你可以自定义输入控件的键盘等)
6,Responders支持自定义input accessory view。(常见的应用就是你可以在键盘顶部自定义toolbars,来完成额外的操作)
对文本输入于展示的支持:
1,新增Core Text framework,增强了文本展示和布局的体验;
2,UIKit增加了一些方法:
增加了新的协议,允许自定义视图接受系统键盘的输入;
增加了UITextChecker,检查输入;
在UIMenuController的功能操作下可以添加自定义事件
3,Core Animation添加了CATextLayer Class,你可以在一个layer中展示文字。也许可以产生很绚的效果哦!
可以连接外部设备展现iPad的内容,相关介绍在此略过 。
对于文件的格式化支持:
1,可以指定应用程序可以打开哪几种文件;
2,UIDocumentInteractionController class可以预览程序所不能打开的文件;
3,UIFileSharingEnabled Key(Info.plist)可以设置是否和电脑分享。
iPhone OS 3.2还可以创建PDF哦!
呵呵,以上内容希望对你有所帮助!
(written in encompass)