iOS模拟器让你可以在Mac上测试你的应用程序
深入浅出iPhone/iPad开发(第2版)
模拟器是一款伟大的测试工具,它可以让你快速并且免费测试应用程序。它不能兼容所有真正的设备,但是对于大多数设备而言,它表现得很好。当你第一次打开模拟器时,你会看到一个安装了iDecide(默认图标你可以在之后修改)的面板(就像一部真正的iPhone,它的初始屏幕会显示你的所有应用程序图标)。Xcode会打开这个应用程序并运行你的代码。
使用模拟器与使用iPhone会有一些不同之处。首先,摇动和旋转你的Mac不会发生任何事情,因此那些事情是不会在模拟器中测试的。类似于旋转,以及检查外观和内部视图,在Hardware菜单下会有一些命令。同样也会有手势支持的限制,CPU和内存的使用也不会表现得很真实,并且硬件功能,如倾斜感应器(或者加速计或者陀螺仪),也都不存在。
尽管存在这些问题,你还是会发现,与使用真正的设备相比较而言,使用模拟器对开发的主要部分进行测试依然快捷便利。你可以一直使用模拟器测试,然后直到你的应用程序成熟(或者硬件需要),再移动到真正的设备上。
内存、性能、摄像机、GPS和其他特性不能使用模拟器进行可靠测试。我将在之后对其进行更多讨论,但是内存使用和性能表现还是能够在模拟器上进行简单测试的,因为你的Mac比iPhone或iPad拥有如此多的资源。去测试这些内容,你需要将程序安装到一部真实的设备上(这意味着要加入一个需要付费开发项目)。
因此,你可能想要立刻按下这个按键,并观察会发生什么,对吗?让我们继续吧……
在Objective-C中的UI执行表现。
界面构建器创建了你的按键,但是要让这个按键实际上做些什么事情,你需要编写一些代码,并告诉按键该如何表现。
控件(你添加的像按键一样的UI元素)在有事情发生时会触发事件,例如按键被按下。对于如按键被按下这样的事件,界面构建器可以通过代码连接视图控件,实现类控制器中的方法,并以IBAction(界面构建器动作)做标记。我们将在后面讨论关于Objective-C对于动作的语法,但是现在,你需要在你的头文件(.h)中声明一个方法并在.m中执行它。