您可以使用启动映像,而无需包含两次.关键是,当您使用assets资源 目录时,应用程序包中包含的图像的文件名是(某种程度上)标准化的,可能与您对原始文件的命名无关.
特别是,当您使用LaunchImage映像集时,最终出现在应用程序包中的文件的名称如下
- 启动图像.巴布亚新几内亚
- LaunchImage@2x.png
- emits 图像-700@2x.png
- emits 图像-568h@2x.png
- emits 图像-700-568h@2x.png
- emits 图像-700-Landscape@2x~ipad.巴布亚新几内亚
请特别注意,它们没有被命名为Default.png
或其任何变体.即使这就是你所说的文件.一旦你把它们放在assets资源 目录中的wells个目录中,它们的另一端就会有一个标准名称.
所以[UIImage imageNamed:@"Default"]
不起作用,因为应用包中没有这样的文件.不过,[UIImage imageNamed:@"LaunchImage"]
也可以(假设你已经填充了iPhone肖像2x井或pre iOS7 iPhone肖像1x井).
文档表明,UIImage
上的imageNamed:
方法应该自动神奇地 Select 正确的版本,但我认为这只适用于除启动映像之外的映像集——至少我还没有让它正常工作(could just be me not doing something right).
因此,根据具体情况,您可能需要进行一些try 和错误操作,以获得正确的文件名.在模拟器中构建并运行应用程序,然后您可以始终查看相应的子目录~/Library/Application Support/iPhone Simulator
,以验证应用程序包中的实际文件名.
但同样重要的是,不需要包含图像文件的副本,也不需要对Copy Bundle Resources
构建阶段进行任何调整.