UIScrollView创建相册
1.设置滚动相册
1.1将存放图片数组传过来,及当前图片的索引
1.2在控制器中创建ScrollView,设置它的contentSize,contentOffset.
1.3通过传过来的图片数组创建UIImageView并将每个UIImageView添加到ScrollView,ScrollView的ConSize是图片数组的总数乘以每个UIImageVIew的宽度.
1.4滚动图片设置图片当前索引及总数.
1.5删除图片操作
1.51当删除图片的索引>0时,设置图片的偏移量是当前图片的索引-1*当前UIImageView的宽度,
_imageScrollView.contentOffset = CGPointMake((self.currImageTag-1)*_imageScrollView.bounds.size.width, 0);
1.52当删除图片的索引= 0时,设置图片的偏移是是当前图片的索引*当前UIImageView的宽度,
_imageScrollView.contentOffset = CGPointMake((self.currImageTag)*_imageScrollView.bounds.size.width, 0);
1.6当删除其中一个图片后,刷新视图重新设置当前的图片的索引及数组的总数,如果是列表形式的,按照九宫格方式重新布局.
代码如下:
CGRect frame = self.view.bounds;
frame.origin.x -= gap;
frame.size.width += (* gap);
_imageScrollView = [[UIScrollView alloc] initWithFrame:frame];
_imageScrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
;
// 设置伸缩比例
_imageScrollView.maximumZoomScale = 2.0;
_imageScrollView.minimumZoomScale = 1.0; _imageScrollView.pagingEnabled = YES;
_imageScrollView.delegate = self;
_imageScrollView.showsHorizontalScrollIndicator = NO;
_imageScrollView.showsVerticalScrollIndicator = NO;
_imageScrollView.backgroundColor = [UIColor clearColor]; if (self.imageArray && self.imageArray.count){
_imageScrollView.contentSize = CGSizeMake(frame.size.width *self.imageArray.count, ); for (NSInteger i = ; i <self.imageArray.count; i++) {
_imageView = [[UIImageView alloc] init];
CGRect bounds = _imageScrollView.bounds;
_imageView.frame = CGRectMake(i*bounds.size.width,, bounds.size.width-gap, bounds.size.height);
UIImage *image = self.imageArray[i];
_imageView.userInteractionEnabled = YES;
_imageView.tag = i+;
if (image && [image isKindOfClass:[UIImage class]]) {
_imageView.image = image;
}
[_imageScrollView addSubview:_imageView];
}
} [self.view addSubview:_imageScrollView];
_imageScrollView.contentOffset = CGPointMake(self.currImageTag*frame.size.width, );
UIScrollView创建相册的更多相关文章
- ios8中,相册创建后手动删除,不能再进行创建显示
// Add a new ALAssetsGroup to the library. // The name of the ALAssetsGroup is name and the type is ...
- hexo博客进阶-相册和独立域名
之前我已经写了一篇文章详细的讲述了如何使用hexo搭建github博客.如果还没有看的可以去看看,hexo搭建博客 其实,根据这篇文章的过程我们就能够搭建一个专属于自己,并且非常美观的博客了.但是如果 ...
- 利用Photos 框架搭建美图秀秀相册选择器
简介:Photos框架是iOS8.0后推出的一个新的用于对系统相册进行相关操作的,在iOS8.0之前,开发中只能使用AssetsLibrary框架来访问移动设备的图片库.本文中不再对AssetsLib ...
- iOS开发之保存照片到自己创建的相簿
iOS开发之保存照片到自己创建的相簿 保存照片还可以用ALAssetsLibrary,ALAssetsLibrary提供了我们对iOS设备中的相片.视频的访问,是连接应用程序和相册之间访问的一个桥梁. ...
- iOS 下的相册与图片处理
需求 很多公司项目中都会使用到相册,以及相机,保存图片,从相册中选取图片等等操作.本文将详细介绍该功能如何实现优化,以及使用一些优秀的第三方库来辅助完成我们的需求. photos framework ...
- jsp实现仿QQ空间新建多个相册名称,向相册中添加照片
工具:Eclipse,Oracle,smartupload.jar:语言:jsp,Java:数据存储:Oracle. 实现功能介绍: 主要是新建相册,可以建多个相册,在相册中添加多张照片,删除照片,删 ...
- 关于QQ空间相册功能的构想与简单实现
QQ空间上传照片对其可以分类,形成不同的相册,这对于用户体验来说是很不错的,如果用户只能上传不加以分类,那么用户体验会很差. 下面是自己关于相册功能实现的一些简单看法: 首先,是创建相册,可以用pan ...
- iOS开发之获取系统相册ALAssetLibrary
注:当你选择看这篇博客时想必你的应用还支持iOS8一下系统,如果你的应用要求最低版本大于iOS8,建议使用PhotoKit框架,效率更高 ALAssetsLibrary包含,ALAssetsLibra ...
- QQ空间相册照片批量导出
QQ空间相册照片批量导出 先自己创建一个私人的单独的群,然后创建相册,上传照片来源从空间选图复制 复制完成后打开相册开始骚操作(两种方式) OK
随机推荐
- Atitit.复合文档的格式 标准化格式
Atitit.复合文档的格式 标准化格式 1. Docfile1 2. Iso Cdf cd file1 3. Zip1 4. Ooxml1 5. Odf :OpenDocument Form ...
- Android http 的使用
1.okHttp https://github.com/square/okhttp 2.okhttp-utils https://github.com/hongyangAndroid/ok ...
- UIApplicationDelegate
App受到干扰时,UIApplication会通知它的delegate对象,让delegate处理系统事件. 项目中的AppDelegate已经遵守了UIApplicationDelegate协议 ...
- 浅谈Java五大设计原则之责任链模式
首先我们得先定义一个责任链模式: 责任链模式是一种线性执行流程,多个对象都有机会去执行同一个任务,只是在执行过程中, 由于执行的权利和范围不一样,那么当自己不能处理此任务时,就必须将这个任务抛给下一个 ...
- NSString 字符串替换
NSString * oneScale=@"@ddd"; NSLog(@"%@",[oneScale stringByReplacingOccurrencesO ...
- php示例代码之使用list函数和mysql_fetch_row函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- SAE上传文件到storage
还有什么比代码更清晰的讲解 html代码: 一定需要下面这个: method="post" enctype="multipart/form-data" < ...
- Third glance in Go
在Go語言裏關於數組(Array),切片(Slice)和映射表(Map)的使用是非常常見的.有過其他語言編程背景的人會比較熟悉一下,但是也是因爲過於的熟悉,從而導致一個慣性思維,往往就會踢到“石頭”, ...
- python写的分析mysql binlog日志工具
因为数据库增删改突然暴增,需要查询是那些表的操作特别频繁,写了一个用来分析bin-log的小工具,找出增删改查的表,并按照操作次数降序排列,以下是代码: 1 2 3 4 5 6 7 8 9 10 11 ...
- mysql密码相关
Windows中修改密码在不同场景下,有以下几种方案: 方法1:用SET PASSWORD命令,具体更新密码步骤如下: c:>mysql -u root mysql>set passw ...