最近尝试使用pathForResource:ofType的方式去取Bundle里的资源发现没有取到,打印出来的路径是nil。
查了些资料发现,添加到工程里的资源文件在项目编译的时候会被复制到main bundle中,可以在Copy Bundle Resourse 中查看所有被打包到main bundle中的资源文件,如图
而只有在Copy Bundle Resourse中显示的文件在编译时才会被复制到main bundle中,直接向工程中添加的资源和通过Asset Catalog 方式添加的资源都会在Copy Bundle Resourse中显示,但有些时候虽然向工程中添加了资源,在Copy Bundle Resourse中可能没有显示,这时需要点击Copy Bundle Resourse下面的“+”按钮手动添加,否则main bundle中就不会有该资源文件,在代码中使用该资源文件时可能会出现问题。
之后在Copy Bundle Resourse中手动添加了picture就可以打印出路径了
网友评论