之前在开发中,使用到了相机相册选图功能,为此研究了一段时间关于相机相册这些类里面的东西,我在开发过程中碰到了一个问题就是,我因为要做记录图片是否选择过,所有我在获取图片后根据返回的image去获取它的ALAsset对象(存放了图片的所有信息),然后用数组存起来传出去,再次点击选着图片时在相册中就会勾选已选择的图片,不让其重复选择,但是在ALAsset数组再传进来时里面的对象是nil,后来上网查了好久,才知道,ALAsset对象是时刻需要持有一个ALAssetsLibrary的对象,这让ALAsset对象才会有值,解决办法就是声明一个全局的ALAssetsLibrary对象(局部声明的会在方法结束后销毁,无法让ALAsset时刻持有该对象)!