在前面讲解应用生命周期时,为了禁止应用在后台运行,我们将HelloWorld-Info.plist文件中的Application does not run in background属性修改为YES(即UIApplicationExitsOnSuspend = YES),这项操作就属于产品属性的设置。在Xcode中,产品与Target直接相关,而Target与Project直接相关。 2.5.1 Xcode中的Project和Target 打开HelloWorld工程时,我们会看到如图2-30所示的界面。产品属性包括Project和Target两块内容。一个工程只有一个Project,但可以有一个或多个Target。 图2-30 Xcode的Project和Target 我们所创建的HelloWorld只有一个Target,下面我们为之前使用故事板实现的HelloWorld工程增加一个Target。 首先,依次选择File→New→Target菜单项,此时会弹出一个模板选择对话框,如图2-31所示。 图2-31 选择Target模板对话框 这里选择的模板与新建工程时选择的模板完全一样,然后点击Next按钮,将出现如图2-32所示的对话框。 根据情况逐一设定后,点击Finish按钮,现在我们已经成功为HelloWorld新增了一个Target。查看左边的导航面板,可以发现右边有两个Target,并同时生成一套完整的文件——main.m、AppDelegate、ViewController和MainStoryboard.storyboard,它们独立于原来的Target而存在,如图2-33所示。 图2-32 Target的一些选项设定 图2-33 新创建Target 要指定运行哪一个Target,可以通过选择不同的Scheme来实现。如图2-34所示,在Xcode的左上角选择HelloWorld_Storyboard→iPhone 6.0 Simulator,就可以在iPhone 6.0 Simulator上运行HelloWorld_ Storyboard Target了。 图2-34 选择Scheme 2.5.2 设置常用的产品属性 Target继承了Project。对于Target和Project下都有的设置项,可根据需要对Target进行再设置,此设置可覆盖Project的设置。 Project中的属性设置相对比较简单,大家可以参考官方的相关资料。这里为大家介绍Target下4个常用的产品属性。 1. 设定屏幕方向 如图2-35所示,在导航面板中选择HelloWorld_Storyboard Target,然后在右侧选择Summary选项卡,此时可以发现下面的Supported Interface Orientations区域中有4个按钮,它们代表设备支持的4个方向,其中按下状态(深色)代表支持该指定方向。 图2-35 设定支持的屏幕方向 说明 鉴于Target的属性存储在HelloWorld_Storyboard-Info.plist文件中,也可以直接修改HelloWorld_Storyboard- Info.plist文件以完成属性各项的设置,如图2-36所示。 图2-36 在HelloWorld_Storyboard-Info.plist文件中设定屏幕方向 2. 设置应用图标 如图2-37所示,在App Icons区域中,右击选择图片文件,然后为应用添加图标。后面的App Icons选择区域用来为具备Retina显示技术(iPhone 4以后才支持)的设备提供图标,操作同前。 图2-37 应用图标的设定 图标对其图片文件的尺寸和名称要求很严格,普通App Icons的图片大小为57×57像素,名称为Icon.png;Retina显示屏App Icons的图片大小为114×114像素,名称为Icon@2x.png。 说明 应用图标名可以不做修改,直接采用原来的自定义名称,因为Xcode会自动给图标改名,但文件的格式(PNG)和大小必须按照要求设定。 3. 设置启动屏幕 启动屏幕是应用启动时一闪而过的图片,它也在Summary选项卡中设置。如图2-38所示,在Launch Images区域中,右击选择图片区域,在弹出界面中选择Select File,选择我们为启动屏幕准备好的图片文件。对于普通的iPhone设备,这个图片的大小为320×480像素,文件以Default.png命名。右边的选择框是为Retina显示技术设备提供图片的,大小是640×960像素,文件命名为Default@2x.png。 图2-38 应用屏幕的设定 说明 启动屏幕图片的名字可以不做修改,因为Xcode会自动给它改名,但文件的格式(PNG)和大小必须按照要求进行设定。iPad设备会有4种图片,命名也与iPhone不同。 4. 设置设备支持情况 我们可以让应用支持iPhone设备或iPad设备,或者同时支持iPhone和iPad设备。如图2-39所示,在Summary选项卡中的iOS Application Target区域中单击Device下拉列表,从中选择iPhone、iPad或者Universal选项,其中Universal表示同时支持iPhone和iPad设备。 图2-39 设置设备支持情况 事实上,产品的相关属性还有很多,我们会在后面继续了解。