【iOS开发系列】更换头像(相机、相册)
来源:互联网 发布:批量修改文件名称软件 编辑:程序博客网 时间:2024/06/05 17:49
/** * 更换头像按钮点击 */- (void)userIconChange{ UIActionSheet *myActionSheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles: @"从相册选择", @"拍照",nil]; [myActionSheet showInView:self.view];}
/** * 警告框 */-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{ switch (buttonIndex) { /* 从相册中选取照片 */ case 0: [self LocalPhoto]; break; /* 拍照 */ case 1: [self takePhoto]; break; default: break; }}
/** * 从相册选择照片 */-(void)LocalPhoto{ UIImagePickerController *picker = [[UIImagePickerController alloc] init]; /* 资源类型为图片库 */ picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; picker.delegate = self; /* 设置选择后的图片可被编辑 */ picker.allowsEditing = YES; [self presentModalViewController:picker animated:YES];}
/** * 拍照 */-(void)takePhoto{ /* 资源类型为照相机 */ UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera; UIImagePickerControllerQualityType qualityType = UIImagePickerControllerQualityTypeHigh; /* 判断是否有相机 */ if ([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]) { UIImagePickerController *picker = [[UIImagePickerController alloc] init]; picker.delegate = self; /* 设置拍照后的图片可被编辑 */ picker.allowsEditing = YES; /* 资源类型为照相机 */ picker.sourceType = sourceType; /* 品质为高 */ picker.videoQuality = qualityType; [self presentModalViewController:picker animated:YES]; } else { NSLog(@"该设备无摄像头"); }}
/** * 图像选取器的委托方法,选完图片后回调该方法 */-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo{ /* 当图片不为空时显示图片并保存图片 */ if (image != nil) { /* 图片显示在界面上 */ // [_iconButton setBackgroundImage:image forState:UIControlStateNormal]; // 显示在按钮上 [_iconButton setImage:image forState:UIControlStateNormal]; /* 以下是保存文件到沙盒路径下 */ /* 把图片转成NSData类型的数据来保存文件 */ NSData *data; /* 判断图片是不是png格式的文件 */ if (UIImagePNGRepresentation(image)) { /* 返回为png图像 */ data = UIImagePNGRepresentation(image); } else { /* 返回为JPEG图像 */ data = UIImageJPEGRepresentation(image, 1.0); } /* 保存 */ [[NSFileManager defaultManager] createFileAtPath:self.imagePath contents:data attributes:nil]; } /* 关闭相册界面 */ [picker dismissModalViewControllerAnimated:YES];}
当然、如果是网络应用需要将更换的头像上传到服务器 (留在下一步完成........)
0 0
- 【iOS开发系列】更换头像(相机、相册)
- Android调用系统相机或相册更换头像
- 更换头像用相机拍摄或者从相册选择
- Android通过访问相机或相册来更换头像
- iOS 头像选取 (相机或相册)
- iOS调用相机,相册,上传头像
- iOS 调用相机,获取相册,截取头像
- iOS开发swift如何调用系统相册和相机获取图片设置用户头像
- 更改头像 相册/相机
- 安卓头像更换,调用系统相机,或从相册修改头像
- iOS开发 - 访问相机相册
- 【学习ios之路:UI系列】点击更换头像实现从相册读取照片和拍照两种功能
- iOS 调取本地相册/相机,剪裁图片进行头像上传
- iOS调用系统相册,相机上传头像的基本技巧
- 更换用户头像 调用手机相册或相机拍照 选择图片并裁剪
- 点击头像,调用相机,相册改变头像
- ios开发调用系统相机相册
- iOS开发 调用系统相机和相册
- 计算表达式(栈)
- 第十七周oj刷题——Problem F: C++习题 输入输出--保护继承
- 求无符号数二进制中1的个数&&求一个字符串中最长的连续子串
- C++ primer 学习笔记 2 快速入门2
- LeetCode-Majority Element -解题报告
- 【iOS开发系列】更换头像(相机、相册)
- CHANGE MASTER TO语法
- 国产手机在mac os中无法被adb识别的解决方法(转)
- 大二下学期总结
- 线程锁
- Python笔记:MySQLdb模块常用操作
- 九度1483 求最大最小数
- Nginx 与 Lua
- ActionBar属性和效果修改