上传图片

来源:互联网 发布:linux命令 chm 编辑:程序博客网 时间:2024/06/09 22:22

1 实现代理

<UIActionSheetDelegate,UIImagePickerControllerDelegate,UINavigationControllerDelegate>

2 点击修改

void)click:{ UIActionSheet *choiceSheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"拍照", @"从相册中选取", nil];  [choiceSheet showInView:self.view];}

3 上传

#pragma mark - UIActionSheetDelegate- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {    if (buttonIndex == 0) {        // 拍照        UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera;        //判断是否有相机        if ([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]){            UIImagePickerController *picker = [[UIImagePickerController alloc] init];            picker.delegate = self;            //设置拍照后的图片可被编辑            picker.allowsEditing = YES;            //资源类型为照相机            picker.sourceType = sourceType;            [self presentModalViewController:picker animated:YES];        }else{            NSLog(@"该设备无摄像头");        }    } else if (buttonIndex == 1) {        // 从相册中选取        UIImagePickerController *pickerImage = [[UIImagePickerController alloc] init];        if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {            pickerImage.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;            pickerImage.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:pickerImage.sourceType]; }        pickerImage.delegate = self;        pickerImage.allowsEditing = YES;        [self presentViewController:pickerImage animated:YES completion:nil];    }}//传图片- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{    [picker dismissViewControllerAnimated:YES completion:^{}];    UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];//    CGSize imageSize = image.size;//    imageSize.height =100;//    imageSize.width =100;//    image = [self imageWithImage:image scaledToSize:imageSize];    //上传修改图片    //获取当前用户id    NSUserDefaults *defau = [NSUserDefaults standardUserDefaults];    NSString *userIDIndefau = [defau objectForKey:@"userID"];    NSMutableDictionary * temDic=[NSMutableDictionary dictionary];    [temDic setObject:userIDIndefau forKey:@"user_id"];    NSData *imagedata = UIImageJPEGRepresentation(image,0.1);    [temDic setObject:imagedata forKey:@"user_img"];      //    [self.imgButton setBackgroundImage:image forState:UIControlStateNormal];}//图片压缩-(UIImage*)imageWithImage:(UIImage*)image scaledToSize:(CGSize)newSize{    UIGraphicsBeginImageContext(newSize);    [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();    UIGraphicsEndImageContext();    return newImage;}
0 0
原创粉丝点击