苹果公司在Cocoa Touch的UIKit中提供了一个庞大的库,包括大量现成UI组件和控制器。因为用户已经熟悉了这些常见UI元素的工作方式,在自己的iPhone应用程序中采用它们不仅可以增强可用性,而且会帮助节省宝贵的开发时间。例如,在iPhone的小屏幕上,利用苹果公司的UINavigationController或UITabBarController可以高效地在一个应用程序内不同的紧凑视图之间移动。
在iPad较大的768×1024的屏幕上,可能在界面设计的选择上想要更大胆地创新一下。诚然,iPad提供了一个更为健壮的平台,可以创建复杂的桌面级应用程序,但是试图模仿传统桌面界面模型的做法就是非常大的误区了。不要因为iPad的屏幕更大,就忘记了iPad之所以会成为一款强大的移动设备,是因为其简单性。无论扩展的屏幕多大,你使用的还是一个支持多点触摸的触摸屏设备。要留出大量空间,让界面简洁一些,以减少手指敲击的失误。少即是多。
就像其为iPhone所做的工作一样,苹果公司在UIKit中提供一些精彩的以iPad为中心的新界面元素。与已经添加到Interface Builder的库中的新UI组件一起,Xcode也提供了一些新的iPad项目模板,比如Split View-based Application模板(参见下图)。
Xcode提供了新的iPad项目模板,比如Split View-based Application,以帮助为你的新iPad应用程序生成初始代码库,然后供你进一步定制。
新的iPad专有的UISplitViewController用在了众多流行的iPad应用程序中,比如The Iconfactory的Twitterriffic和苹果公司的Mail。像大多数Xcode模板一样,Split View-based Application模板会生成一个工作项目,你可以进一步定制。该模板提供一个预制的拆分的基于视图的应用程序界面,在主窗格中用UITableView配置,在内容窗格中用UIView配置。如果在存储复选框中选择Use Core Data,则新项目甚至会包含样例代码,用Core Data条目填充UITableView。通过查看这些简便的项目模板生成的代码,可以了解关于iPad编程的很多知识。如果你对这个新的UI控制器感兴趣,那么不要错过第8章,这一章将广泛地介绍在你自己的iPad应用程序中如何使用UISplitViewController。
UIKit提供了这么多出色的界面项,为什么还要自己重新设计UI体验呢,而且自己设计的界面项往往会令新用户感到陌生。不错,你希望给自己的iPad应用程序一个***的界面,但是如果与大家熟悉的用户交互偏离太远,就有可能削弱应用程序的立即可用性。除非开发的应用程序需要完全定制的UI,比如游戏,这种情况下,适时地利用UIKit会给你带来***的收益。
现成的项目模板和UI组件的优势是它们完全可定制。可以修改现有属性或为其创建子类,根据你心目中的画面进行调整,让你的应用程序拥有自己个性化的精美外观。采用用户熟悉的界面,用户会发现你的iPad应用程序更加易于操作。