相册操作

/*

#pragma mark -点击图片显示大图-
-(void)addEnvironment:(int) index
{
    WZPreviewPictureViewController * pp = [[WZPreviewPictureViewController alloc] init];
    pp.urlString = [((NSString *)[self.datalist objectAtIndex:index]) changeBigImage];
    self.view.window.rootViewController.modalPresentationStyle = UIModalPresentationCurrentContext;
    [self presentViewController:pp animated:YES completion:nil];
    [pp release];
}

// 将图片转换为JPG格式的二进制数据上传
- (void)shangchuantupian
{
    NSData *data = UIImageJPEGRepresentation(self.productPic.image, 1); //将图片转换为JPG格式的二进制数据上传
    [_requestCommon setData:data withFileName:@"coupon.jpg" andContentType:@"image/jpeg" forKey:@"imgpath"];
}
- (void)actionSheet
{
    
#warning 系统版本高于 8.0 调用此方法
    UIAlertController *pictureSelectAlert = [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerStyleActionSheet];

UIAlertAction *takePhoto = [UIAlertAction actionWithTitle:JZLTakePhoto style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) { // 照相
        
        [self JZLTakePhotos];
    }];
    UIAlertAction *selectPhoto = [UIAlertAction actionWithTitle:JZLSelectPhoto style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) { // 从相册选择
        
        [self JZLSelectPhotos];
    }];
    UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:nil];

[pictureSelectAlert addAction:takePhoto];
    [pictureSelectAlert addAction:selectPhoto];
    [pictureSelectAlert addAction:cancel];

[self presentViewController:pictureSelectAlert animated:YES completion:nil];
}
// 照相
- (void)JZLTakePhotos
{
    UIImagePickerController *_ipcCamera = [[UIImagePickerController alloc] init];
    _ipcCamera.sourceType = UIImagePickerControllerSourceTypeCamera;
    _ipcCamera.delegate = self;
    _ipcCamera.allowsEditing = YES;
    [self presentViewController:_ipcCamera animated:YES completion:nil];
    [_ipcCamera release];
}
// 从相册选择
- (void)JZLSelectPhotos
{
    UIImagePickerController *_ipcPhoto = [[UIImagePickerController alloc] init];
    _ipcPhoto.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    _ipcPhoto.delegate = self;
    _ipcPhoto.allowsEditing = YES;
    [self presentViewController:_ipcPhoto animated:YES completion:nil];
    [_ipcPhoto release];
}
#pragma mark ----UIImagePickerControllerDelegate methods
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    NSLog(@"%@", info);
    
    UIImage *img = nil;
    if (picker.sourceType == UIImagePickerControllerSourceTypeCamera) { // 相机获得
        
        //如果是 来自照相机的image,那么先保存UIImagePickerControllerEditedImage
        UIImage *OriginalImage = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
        UIImageWriteToSavedPhotosAlbum(OriginalImage, self, nil, nil);
        
        // 获得编辑过的图片
        img = [info objectForKey:@"UIImagePickerControllerEditedImage"];
        
    } else if (picker.sourceType == UIImagePickerControllerSourceTypePhotoLibrary) { // 相册获得
        
        img = [info objectForKey:@"UIImagePickerControllerEditedImage"];
    }
    
    UIImage *pressedImg = nil;
    // 压缩
    if (img.size.width >300 || img.size.height > 300) {
        
        float scale = 300.0 / img.size.width;
        CGSize size = CGSizeMake(img.size.width * scale, img.size.height * scale);
        
        pressedImg = [self imageWithImageSample:img scaleToSize:size];
    } else {
        
        pressedImg = img;
    }
    
    [picker dismissViewControllerAnimated:YES completion:^{
        
        [self.productPic setImage:pressedImg];
    }];
}
// 照片压缩
- (UIImage *)imageWithImageSample:(UIImage *)image scaleToSize:(CGSize)size
{
    UIGraphicsBeginImageContext(size);
    
    [image drawInRect:CGRectMake(0, 0, size.width, size.height)];
    
    UIImage *pressedIMG = UIGraphicsGetImageFromCurrentImageContext();
    
    UIGraphicsEndImageContext();
    
    return pressedIMG;
}

*/

时间: 2024-10-29 19:07:26

相册操作的相关文章

ios相机和相册操作

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{    UIImagePickerController * picker = [[UIImagePickerController alloc] init];    picker.delegate = self;        switch (buttonIndex) {        case 0:// 相机   

ios 相册操作 ALAssetsLibrary

1.ALAssetsLibrary 实例为我们提供了获取相册(照片app)中的图片和视频的功能.在ios8 photos framework代替了ALAssetsLibrary. 在使用ALAssetsLibrary时,我们需要申明它的实例. ALAssetsLibrary* library = [[ALAssetsLibrary alloc] init]; 2. 迭代获取相册ALAssetsGroup: - (void)enumerateGroupsWithTypes:(ALAssetsGro

iOS摄像头和相册-UIImagePickerController-浅析

转自:http://www.2cto.com/kf/201406/312257.html 在一些应用中,我们需要用到iOS设备的摄像头进行拍照,视频.并且从相册中选取我们需要的图片或者视频. 关于iOS摄像头和相册的应用,可以使用UIImagePickerController类来完成控制. 关于UIImagePickerController的相关知识, 如下: iOS的一些设备上都安装了摄像头.现在绝大多数都有了. 在编程中,我们是用相应的东西来进行照相,录像等功能. 一.UIImagePick

iOS摄像头和相册

-UIImagePickerController-浅析 (2013-04-05 19:16:26) 转载▼ 标签: uiimagepickercontrol ios摄像头 ios相册 iphone 分类: 帮助文档 在一些应用中,我们需要用到iOS设备的摄像头进行拍照,视频.并且从相册中选取我们需要的图片或者视频. 关于iOS摄像头和相册的应用,可以使用UIImagePickerController类来完成控制. 关于UIImagePickerController的相关知识, 如下: iOS的一

HTML5+规范:gallery(管理系统相册)

Gallery模块管理系统相册,支持从相册中选择图片或视频文件.保存图片或视频文件到相册等功能.通过plus.gallery获取相册管理对象. 1.方法 1.1.pick: 从系统相册选择文件(图片或视频) void plus.gallery.pick( successCB, errorCB, option ); 说明:从系统相册中选择图片或视频文件.每次仅能选择一个文件,选择后将返回选择的文件路径. 参数: succesCB: ( GalleryPickSuccessCallback | Ga

iOS 开发之照片框架详解

一. 概要 在 iOS 设备中,照片和视频是相当重要的一部分.最近刚好在制作一个自定义的 iOS 图片选择器,顺便整理一下 iOS 中对照片框架的使用方法.在 iOS 8 出现之前,开发者只能使用 AssetsLibrary 框架来访问设备的照片库,这是一个有点跟不上 iOS 应用发展步伐以及代码设计原则但确实强大的框架,考虑到 iOS7 仍占有不少的渗透率,因此 AssetsLibrary 也是本文重点介绍的部分.而在 iOS8 出现之后,苹果提供了一个名为 PhotoKit 的框架,一个可以

系统提供的UIImagePickerController

1.从系统相册中读取 /* 判断选择的读取类型是否支持 UIImagePickerControllerSourceTypePhotoLibrary,普通相册 UIImagePickerControllerSourceTypeCamera, 镜头(拍照.录视频) UIImagePickerControllerSourceTypeSavedPhotosAlbum(自己保存的图片) */ if ([UIImagePickerController isSourceTypeAvailable:UIImag

系统简单的UIImagePickerController

1.从系统相册中读取 /* 判断选择的读取类型是否支持 UIImagePickerControllerSourceTypePhotoLibrary,普通相册 UIImagePickerControllerSourceTypeCamera, 镜头(拍照.录视频) UIImagePickerControllerSourceTypeSavedPhotosAlbum(自己保存的图片) */ if ([UIImagePickerController isSourceTypeAvailable:UIImag

Delphi 10.3.1来了

10.3.1发布了,这个版本可以独自安装,是对Delphi 10.3 Rio,C ++ Builder 10.3 Rio和RAD Studio 10.3 Rio的更新.如果安装了2018年11月发布的10.3 Rio,那需要完全卸载旧版本,才能安装新版本,这很麻烦,但是可以使用设置合并工具来保留旧版本的设置. 10.3.1的新功能: 扩展了对iOS 12和iPhone X系列设备的支持. RAD Server Console UI重新设计并迁移到Ext JS框架(可通过GetIt获得). 改进了