本文为大家分享了iOS图片上传至服务器的具体代码,供大家参考,具体内容如下
在使用app时,从相册中选取图片作为头像是很常用的操作,首先打开相册选择图片,然后将图片保存至本应用的document,最后将document中图片的路径保存至NSUserDefaults和服务器。
从相册中选取图片或拍照
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
//从相册中选取图片或拍照 - ( void )btnActionForEditPortrait:(id) sender { UIImagePickerController *picker = [[UIImagePickerController alloc] init]; picker.delegate = self; picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; picker.allowsEditing = YES; [self presentViewController:picker animated:YES completion:NULL]; } - ( void )imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { _avatar = info[UIImagePickerControllerOriginalImage]; [self saveImage:_avatar WithName:@ "userAvatar" ]; //处理完毕,回到个人信息页面 [picker dismissViewControllerAnimated:YES completion:NULL]; [_tableView reloadData]; } |
保存图片
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
//保存图片 - ( void )saveImage:(UIImage *)tempImage WithName:(NSString *)imageName { NSData* imageData = UIImagePNGRepresentation(tempImage); NSString* documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; NSString* totalPath = [documentPath stringByAppendingPathComponent:imageName]; //保存到 document [imageData writeToFile:totalPath atomically:NO]; //保存到 NSUserDefaults NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; [userDefaults setObject:totalPath forKey:@ "avatar" ]; //上传服务器 [[HSLoginClass new ] uploadAvatar:totalPath]; } //从document取得图片 - (UIImage *)getImage:(NSString *)urlStr { return [UIImage imageWithContentsOfFile:urlStr]; } |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/worldzhy/article/details/41575843