[置顶] ios 无限循环翻页源码例子
原创文章,转载请注明出处:http://blog.csdn.net/donny_zhang/article/details/9923053
demo功能:ios 无限循环翻页源码例子。iphone 6.1测试通过。
demo说明:MyScrollView.m中又主要的页面控制代码。使用 UIScrollView和 UIPageControl控件。通过在滚动结束时设置uiscrollview的内容起始坐标来实现无限制循环。
demo截屏:
demo主要代码:MyScrollView.m
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code //UIScrollView
carScroll=[[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 1024, 748)];
[carScroll setContentSize:CGSizeMake(1024*(TOTLE_PAGE+1), 100)];
[carScroll setShowsHorizontalScrollIndicator:NO];
[carScroll setPagingEnabled:YES];
[carScroll setDelegate:self]; for(int i=0; i<TOTLE_PAGE+1; i++) {
UIImageView *scrollImg = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.png",i]]] ;
scrollImg.frame = CGRectMake(1024*i, 0, 1024, 748);
scrollImg.tag = 2220+i;
scrollImg.userInteractionEnabled = YES;
UITapGestureRecognizer *tapGestrue = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapAction:)];
[scrollImg addGestureRecognizer:tapGestrue];
[tapGestrue release], tapGestrue = nil;
[carScroll addSubview:scrollImg];
[scrollImg release], scrollImg = nil;
}
[self addSubview:carScroll]; //carPageControl
carPageControl=[[UIPageControl alloc] initWithFrame:CGRectMake(380, 700, 350, 26)];
[carPageControl setNumberOfPages:TOTLE_PAGE];
[carPageControl addTarget:self action:@selector(changePage:) forControlEvents:UIControlEventValueChanged];
[self addSubview:carPageControl]; }
return self;
} #pragma mark -
#pragma ScrollView Delegate -(void) scrollViewDidScroll:(UIScrollView *)scrollView
{
int offsetX = scrollView.contentOffset.x;
if(offsetX < 0){
[scrollView setContentOffset:CGPointMake(1024*TOTLE_PAGE, 0)];
}
if(offsetX > 1024*TOTLE_PAGE){
[scrollView setContentOffset:CGPointMake(0, 0)];
}
} - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
int offsetX = scrollView.contentOffset.x;
if(offsetX/1024 == TOTLE_PAGE){
[scrollView setContentOffset:CGPointMake(0, 0)];
carPageControl.currentPage = 0;
}
if(offsetX%1024 == 0){
[carPageControl setCurrentPage:scrollView.contentOffset.x/1024];
}
}
demo下载地址:http://download.csdn.net/detail/donny_zhang/5914159
[置顶] ios 无限循环翻页源码例子的更多相关文章
- 自己定义 ViewGroup 支持无限循环翻页之三(响应回调事件)
大家假设喜欢我的博客,请关注一下我的微博,请点击这里(http://weibo.com/kifile),谢谢 转载请标明出处,再次感谢 ################################ ...
- HTML多图无缝循环翻页效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- iOS即时通讯之CocoaAsyncSocket源码解析五
接上篇:iOS即时通讯之CocoaAsyncSocket源码解析四 原文 前言: 本文为CocoaAsyncSocket Read篇终,将重点涉及该框架是如何利用缓冲区对数据进行读取. ...
- iOS即时通讯之CocoaAsyncSocket源码解析一
申明:本文内容属于转载整理,原文连接 前言: CocoaAsyncSocket是谷歌的开发者,基于BSD-Socket写的一个IM框架,它给Mac和iOS提供了易于使用的.强大的异步套接字库,向上封装 ...
- iOS即时通讯之CocoaAsyncSocket源码解析四
原文 前言: 本文为CocoaAsyncSocket源码系列中第二篇:Read篇,将重点涉及该框架是如何利用缓冲区对数据进行读取.以及各种情况下的数据包处理,其中还包括普通的.和基于TLS的不同读取操 ...
- iOS即时通讯之CocoaAsyncSocket源码解析二
原文 前言 本文承接上文:iOS即时通讯之CocoaAsyncSocket源码解析一 上文我们提到了GCDAsyncSocket的初始化,以及最终connect之前的准备工作,包括一些错误检查:本机地 ...
- 一个功能齐全的IOS音乐播放器应用源码
该源码是在ios教程网拿过来的,一个不错的IOS音乐播放器应用源码,这个是我当时进公司时 我用了一晚上写的 图片都是在别的地方扒的,主要是歌词同步,及上一曲,下一曲,功能齐全了 ,大家可以学习一下吧 ...
- ios版弹珠游戏源码
这个是我们比较喜欢玩的一直小游戏的,ios版弹珠游戏源码,该游戏源码来着IOS教程网其他网友提供上传的,大家可以了解一下吧. nore_js_op> <ignore_js_op&g ...
- IOS版新闻客户端应用源码项目
IOS版新闻客户端应用源码,这个是一款简单的新闻客户端源码,该应用实现没采用任何第三方类库的 ,并且这个应用的UI做得很不错的,值得我们的参考和学习,希望大家可以更加完善这款新闻类的应用吧. 源码下载 ...
随机推荐
- AlertDialog对话框
普通对话框 public void click1(View v) { //这里不能用 getApplicationContext()方法来获取上下文 AlertDialog.Builder build ...
- [leetcode DP]63. Unique Paths II
Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How m ...
- Sass 和 SCSS 有什么区别?
Sass 官网上是这样描述 Sass 的: Sass 是一门高于 CSS 的元语言,它能用来清晰地.结构化地描述文件样式,有着比普通 CSS 更加强大的功能. Sass 能够提供更简洁.更优雅的语法, ...
- 面向对象设计原则 开放封闭原则(Open Closed Principle)
开放封闭原则(OCP,Open Closed Principle) 开放封闭原则是所有面向对象原则的核心. 软件设计本身所追求的目标就是封装变化.降低耦合,而开放封闭原则正是对这一目标的最直接体现. ...
- BZOJ 2726: [SDOI2012]任务安排 [斜率优化DP 二分 提前计算代价]
2726: [SDOI2012]任务安排 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 868 Solved: 236[Submit][Status ...
- 【失踪人口回归】第11届东北地区大学生程序设计竞赛——Time to make some change
对哈尔滨出租车和纸质题目和2148473647的吐槽都被毕克神牛在知乎上(https://www.zhihu.com/question/59782275/answer/169402588)pick/b ...
- Codeforces Round #351 (VK Cup 2016 Round 3, Div. 2 Edition) A. Bear and Game 水题
A. Bear and Game 题目连接: http://www.codeforces.com/contest/673/problem/A Description Bear Limak likes ...
- C#高级编程9 第11章 Linq
Linq 1.Linq概述 列表和实体 准备数据: public class Championship { public int Year { get; set; } public string Fi ...
- MySQL内核整理(一)
一.在共享表空间(系统表空间)中,innodb会维护一些系统信息:1.Internal data dictionary2.Rollback segments3.undo space4.insert b ...
- java基础学习总结——哈希编码
一.哈希编码