您的位置:首页 > 移动开发 > IOS开发

iOS将相册中图片上传至服务器的方法

2018-05-24 09:13 811 查看

在使用app时,从相册中选取图片作为头像是很常用的操作,首先打开相册选择图片,然后将图片保存至本应用的document,最后将document中图片的路径保存至NSUserDefaults和服务器。

从相册中选取图片或拍照

//从相册中选取图片或拍照
- (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];
}

保存图片 

//保存图片
- (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];
}

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iOS 图片上传 服务器
相关文章推荐