相册

来源:互联网 发布:java类库手册 pdf 编辑:程序博客网 时间:2024/04/29 10:16

-(void)headImageBtnClick

{

    UIActionSheet*action=[[UIActionSheetalloc] initWithTitle:@"添加图片"delegate:selfcancelButtonTitle:@"取消"destructiveButtonTitle:nilotherButtonTitles:@"从手机相册选择",@"拍一张",nil];

    action.actionSheetStyle =UIActionSheetStyleBlackOpaque;

    action.delegate=self;

    [action showInView:self.view.window];

    

}

#pragma mark---UIActionSheetDelegate

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex

{

    if (buttonIndex==0)

    {

 

        if (mArr_img.count+1 <6 && mArr_img.count ==Pbtn.tag -1 ) {

            CTAssetsPickerController *picker = [[CTAssetsPickerControlleralloc] init];

            picker.assetsFilter         = [ALAssetsFilterallPhotos];

            picker.showsCancelButton    = (UI_USER_INTERFACE_IDIOM() !=UIUserInterfaceIdiomPad);

            picker.delegate             = self;

            

            picker.selectedAssets       = [NSMutableArrayarrayWithArray:mArr_img];

            //        picker.showsCancelButton = NO;

            

            [selfpresentViewController:picker animated:YEScompletion:nil];

        }else{

            [AppClientshowTipsWithView:nilmessage:@"最多添加5张照片"];

            [collection reloadData];

            return;

        }

    

        

    }

    else if (buttonIndex==1)

    {

        //        打开摄像头

        // UIImagePickerControllerCameraDeviceRear 后置摄像头

        // UIImagePickerControllerCameraDeviceFront 前置摄像头

        BOOL isCamera = [UIImagePickerControllerisCameraDeviceAvailable:UIImagePickerControllerCameraDeviceRear];

        if (!isCamera) {

            

            return ;

        }

        

        UIImagePickerController *imagePicker = [[UIImagePickerControlleralloc] init];

        

        imagePicker.sourceType =UIImagePickerControllerSourceTypeCamera;

        

        imagePicker.delegate=self;

        // 编辑模式

        imagePicker.allowsEditing = YES;

//         imagePicker.selectedAssets       = [NSMutableArray arrayWithArray:mArr_img];

        

        [self presentViewController:imagePicker animated:YEScompletion:^{

        }];

    }

}

// 选中照片


- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

{

    NSString *mediaType = [infoobjectForKey:UIImagePickerControllerMediaType];

    if ([mediaType isEqualToString:@"public.image"])

    {

        // UIImage *selectedImage = [info objectForKey:UIImagePickerControllerOriginalImage];

        UIImage *image = [infoobjectForKey:@"UIImagePickerControllerOriginalImage"];

        

        [self saveImageToPhotos:image];

        NSLog(@"found an image");

        

//        self.wallpaperView.image = image;    //将获取到的图片设为背景

        NSLog(@"image ==== %@",image);

    }

    else if ([mediaTypeisEqualToString:@"public.movie"]){

        

        NSURL *videoURL = [infoobjectForKey:UIImagePickerControllerMediaURL];

        NSLog(@"found a video");

        //        NSData *webData = [NSData dataWithContentsOfURL:videoURL];

        //        //NSData *video = [[NSString alloc] initWithContentsOfURL:videoURL];

        //        [webData writeToFile:[self findUniqueMoviePath] atomically:YES];

        //        CFShow([[NSFileManager defaultManager] directoryContentsAtPath:[NSHomeDirectory() stringByAppendingString:@"/Documents"]]);

    }

    NSLog(@"0000000%@",info);

    [selfdismissViewControllerAnimated:YEScompletion:^{}];

}

- (void)saveImageToPhotos:(UIImage*)savedImage

{

    

    UIImageWriteToSavedPhotosAlbum(savedImage,self, @selector(image:didFinishSavingWithError:contextInfo:),NULL);

    

}


// 指定回调方法


- (void)image: (UIImage *) image didFinishSavingWithError: (NSError *) error contextInfo: (void *) contextInfo


{

    

    NSString *msg = nil ;

    

    if(error != NULL){

    

        msg = @"保存图片失败" ;

        

    }else{

        

        msg = @"成功保存图片在相册" ;

        

    }

    

    UIAlertView *alert = [[UIAlertViewalloc] initWithTitle:@"保存图片结果提示"

                          

                                                    message:msg

                          

                                                   delegate:self

                          

                                          cancelButtonTitle:@"确定"

                          

                                          otherButtonTitles:nil];

    

    [alert show];

   

}

// 取消相册

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {

    [picker dismissViewControllerAnimated:YEScompletion:NULL];

    

}


0 0