循环滚动scrollView---最后一张图片后面紧跟着第一张图片,第一张图片前面挨着最后一张图片
来源:互联网 发布:c语言猜数字游戏 编辑:程序博客网 时间:2024/04/28 22:10
问题描述:循环滚动scrollView---最后一张图片后面紧跟着第一张图片,第一张图片前面挨着最后一张图片,形成环,循环切换图片。
效果图如下:具体代码如下:
// ViewController.m
#import "ViewController.h"
#define kW 375
#define kH 500
#define kCount 11
@interface ViewController () <UIScrollViewDelegate>
@end
@implementation ViewController
- (void)viewDidLoad {
[superviewDidLoad];
//加载滚动视图
[self_loadScroll];
}
- (void) _loadScroll
{
UIScrollView * scrollView=[[UIScrollViewalloc]initWithFrame:CGRectMake(0,0, kW, kH)];
scrollView.delegate=self;
for (int i=0; i<kCount+2; i++)
{
UIImageView * imageView=[[UIImageViewalloc]initWithFrame:CGRectMake(i*kW,0,kW ,kH )];
//图片序号
int imageIndex=i;
//如果是第一张和最后一张需要特殊处理
if (i==0)
{
imageIndex=kCount;
}
else if(i==kCount+1)
{
imageIndex=1;
}
//添加图片
NSString * imgName=[NSStringstringWithFormat:@"t%i.jpg",imageIndex];
imageView.image=[UIImageimageNamed:imgName];
[scrollViewaddSubview:imageView];
}
scrollView.contentSize=CGSizeMake((kCount+2)*kW,kH); //滚动视图的总宽度
scrollView.showsHorizontalScrollIndicator=NO; //最下方的自带的进度条 NO--隐藏 YES---显示
scrollView.pagingEnabled=YES; //一下滑动一整个屏幕的宽度
[self.viewaddSubview:scrollView];
}
#pragma mark - UIScrollView代理方法实现
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
if (scrollView.contentOffset.x/kW==kCount+1)
{
NSLog(@"====="); //测试代码
scrollView.contentOffset=CGPointMake(kW,0);
}
else if(scrollView.contentOffset.x==0)
{
scrollView.contentOffset=CGPointMake(kW*kCount,0);
}
// if (scrollView.contentOffset.x>(kCount+1)*kW)
// {
// scrollView.contentOffset=CGPointMake(kW, 0);
// }
// else if (scrollView.contentOffset.x/kW==0)
// {
// scrollView.contentOffset=CGPointMake(kW*kCount, 0);
// }
}
@end
缺点:没有实现重复利用,耗费太多内存,优化的程序,等改好后继续上传,敬请期待。。。。。PS:有感而发:最近感觉越来越找不到方向了,但是还在继续坚持,希望能够走到最后,加油吧,小伙伴们!
- 循环滚动scrollView---最后一张图片后面紧跟着第一张图片,第一张图片前面挨着最后一张图片
- 图片左轮播 最后一张和第一张无缝衔接
- 图片右轮播第一张和最后一张无缝衔接
- js实现朝一个方向不间断的图片滚动,这是不能实现的(即最后一张图片跑完后紧接着进行第一张图片)
- android 实现广告图片自动轮播带文字,可从最后一张滑到第一张,而不是回到第一张。
- 多张图片合成一张图片
- 两张(多张)图片合成一张图片
- iOS开发图片合成,多张图片合成一张图片
- 图片(多张)横向滚动,当鼠标停放在其中一张图片时,此张图片发大,滚动停。
- 三张jpg图片合成一张
- 图片 一张变成另一张 JAVASCRIPT
- 多张UIImage图片合成一张
- 相册浏览时,浏览到最后一张,不能返回到第一张循环浏览
- iOS多张图片上传多线程处理方法(可获取最后一张上传状态后的信号)
- 鼠标移动到一张图片时变为另一张图片
- 两张图片叠加成一张图片后使用
- android中将两张图片合并为一张图片
- android中将两张图片合并为一张图片 .
- nyoj42 一笔画问题
- Valid Parentheses问题
- 二维数组的指针
- 【VR】Leap Motion 官网文档 HandModel(手部模型)
- 大话设计模式读书笔记三
- 循环滚动scrollView---最后一张图片后面紧跟着第一张图片,第一张图片前面挨着最后一张图片
- Stanford机器学习[第三课]-欠拟合与过拟合
- 基类指针转换为子类指针,子类指针转换为基类指针(转载)
- aurix编译环境
- 什么是对象,为什么要面向对象,怎样才能面向对象
- 看着脚下默默前行
- 3d数学基础-RotationMatrix-惯性坐标系到物体坐标系,物体坐标系到惯性坐标系-用C++代码实现
- 重温ASP.NET内置对象之Request
- prototype和__proto__