iOS开发常使用到拍照和相册图片作为用户头像,调用系统相机或相册获取图片成为必要操作。本经验介绍如何实现获取图片缓存并显示到屏幕上。适配iOS7、iOS8。
工具/原料
1
编译环境:Xcode 6.4
2
Mac操作系统:OS X 10.10.5
方法/步骤
1
创建工程项目和视图控制器 创建一个single view工程项目,自动创建一个ViewController试图控制器。
2
创建并初始化UI控件 在ViewController.m创建并初始化UIImageView用于显示获取的图片,UIButton及响应事件。
3
设置宏定义、添加代理 判断是否是iOS8以上版本系统:#define IOS8 ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0 ? YES : NO) 调用相册需要使用:UIImagePickerControllerDelegate,UINavigationControllerDelegate代理,iOS7使用UIActionSheet需要添加UIActionSheetDelegate。
4
完善按钮响应事件 iOS8使用UIAlertController选择获取图片方式; iOS8使用UIAlertAction选择获取图片方式。
5
添加自定义方法保存图片到本地沙盒 选择完成后调用。
6
获取图片缓存并显示
7
完成示例 要允许app调用相机,读取相册图片。