iOS 设置个人头像

来源:互联网 发布:小天才电话手表软件 编辑:程序博客网 时间:2024/06/04 18:47

初学者干货:

在使用app时,从相册中选取图片作为头像是很常用的操作。

1、首先打开相册选择图片,

2、然后将图片保存至本应用的document,

3、最后将document中图片的路径保存至NSUserDefaults和服务器。

 

  1. //从相册中选取图片或拍照 
  2. - (void)btnActionForEditPortrait:(id) sender { 
  3.     UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
  4.     picker.delegate = self
  5.     picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 
  6.     picker.allowsEditing = YES
  7.     [self presentViewController:picker animated:YES completion:NULL]; 
  8.  
  9. - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { 
  10.      
  11.     _avatar = info[UIImagePickerControllerOriginalImage]; 
  12.  
  13.     [self saveImage:_avatar WithName:@"userAvatar"]; 
  14.  
  15.     //处理完毕,回到个人信息页面 
  16.     [picker dismissViewControllerAnimated:YES completion:NULL]; 
  17.     [_tableView reloadData]; 

 

  1. //保存图片 
  2. - (void)saveImage:(UIImage *)tempImage WithName:(NSString *)imageName 
  3.     NSData* imageData = UIImagePNGRepresentation(tempImage); 
  4.     NSString* documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES) objectAtIndex:0]; 
  5.     NSString* totalPath = [documentPath stringByAppendingPathComponent:imageName]; 
  6.      
  7.     //保存到 document 
  8.     [imageData writeToFile:totalPath atomically:NO]; 
  9.      
  10.     //保存到 NSUserDefaults 
  11.     NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; 
  12.     [userDefaults setObject:totalPath forKey:@"avatar"]; 
  13.      
  14.     //上传服务器 
  15.     [[HSLoginClass new] uploadAvatar:totalPath]; 
  16.  
  17. //从document取得图片 
  18. - (UIImage *)getImage:(NSString *)urlStr 
  19.     return [UIImage imageWithContentsOfFile:urlStr]; 

 

 

0 0
原创粉丝点击