`

使用UIScrollView实现滚屏效果

 
阅读更多
在一屏中手指滑动实现多个页面的滑动切换可使用UIScrollView来实现 @synthesize scrollView; @synthesize pageControl; // Implement viewDidLoad to do additional setup after loading the view, typically from a nib. - (void)viewDidLoad { [super viewDidLoad]; scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height)]; scrollView.userInteractionEnabled = YES; scrollView.directionalLockEnabled = YES; scrollView.pagingEnabled = YES; scrollView.showsVerticalScrollIndicator = NO; scrollView.showsHorizontalScrollIndicator = NO; scrollView.delegate = self; CGRect frame = self.view.frame; frame.origin.y = 0.0f; UIView* viewFirst = [[[UIView alloc] initWithFrame:frame] autorelease]; viewFirst.backgroundColor = [UIColor greenColor]; UIImage *image =[UIImage imageNamed:@"1.jpg"]; UIImageView* imageView = [[UIImageView alloc] initWithFrame:frame]; imageView.image = image; [viewFirst addSubview:imageView]; frame.origin.x += self.view.frame.size.width; UIView* viewSecond = [[[UIView alloc] initWithFrame:frame] autorelease]; //viewSecond.backgroundColor = [UIColor blueColor]; UITextView* textView = [[[UITextView alloc] initWithFrame:self.view.frame] autorelease]; textView.text = @"\n sadfsfasdfsdf" @"sddsffsdfsdf"; [viewSecond addSubview:textView]; frame.origin.x += self.view.frame.size.width; UIView* viewThird = [[[UIView alloc] initWithFrame:frame] autorelease]; //viewThird.backgroundColor = [UIColor redColor]; UIImage *image2 =[UIImage imageNamed:@"2.jpg"]; UIImageView* imageView2 = [[UIImageView alloc] initWithFrame:self.view.frame]; imageView2.image = image2; [viewThird addSubview:imageView2]; scrollView.contentSize = CGSizeMake(self.view.frame.size.width*3, self.view.frame.size.height); [scrollView addSubview:viewFirst]; [scrollView addSubview:viewSecond]; [scrollView addSubview:viewThird]; CGSize sizePageControl = CGSizeMake(120, 40); CGRect framePageControl = CGRectMake((self.view.frame.size.width-sizePageControl.width)/2, (self.view.frame.size.height-sizePageControl.height-40), sizePageControl.width, sizePageControl.height); pageControl = [[UIPageControl alloc] initWithFrame:framePageControl]; pageControl.hidesForSinglePage = YES; pageControl.userInteractionEnabled = NO; pageControl.backgroundColor = [UIColor clearColor]; pageControl.numberOfPages = 1; [self.view addSubview:scrollView]; [self.view addSubview:pageControl]; } 同时你的ViewController 要实现UIScrollViewDelegate 协议的如下方法, 根据scroll 更新UIPageControl(当然如过你用到UIPageControl的话就无所谓了...) - (void) scrollViewDidEndDecelerating:(UIScrollView *)scrollView { int index = fabs(scrollView.contentOffset.x)/self.view.frame.size.width; pageControl.currentPage = index; }
分享到:
评论

相关推荐

    iOS:UIScrollView实现轮播

    总结起来,使用UIScrollView实现轮播效果主要涉及以下几个步骤: 1. 创建UIImageView数组,加载图片。 2. 设置UIScrollView的contentSize和pagingEnabled属性。 3. 使用NSTimer实现自动轮播。 4. 添加边界处理,实现...

    swift-Swift4.2使用UIScrollView实现图片轮播

    Swift4.2使用UIScrollView 实现图片轮播 轮播原理 UIScrollView对象有pagingEnable成员,如果设置为YES,那么每一个scrollView尺寸这么大的区域就会被当作一页,在滚动时会根据滚动的比例自动计算应该切换到哪一页。

    iOS开发中使用UIScrollView实现图片轮播和点击加载

    本文将详细介绍如何使用UIScrollView来实现这一功能,以Objective-C为编程语言。 首先,我们需要理解UIScrollView的基本概念。UIScrollView是UIKit框架中的一个视图控件,它允许用户在内容超过视图显示范围时进行...

    iOS开发中使用UIScrollView实现无限循环的图片

    为了实现平滑的滚动效果,我们可能需要使用CADisplayLink或者NSTimer来定期更新ScrollView的位置,使其在到达图片边界时自动滚动到下一个或上一个图片,从而达到无限循环的效果。同时,为了优化性能,可以使用...

    iOS开发中使用UIScrollView实现图片轮播和点击

    为了实现自动轮播,可以使用NSTimer定期更新contentOffset,模拟平滑滚动的效果。同时,可以通过设置scrollView的isPagingEnabled属性为true,使滚动在每一页(即每张图片)之间停顿,提供更好的用户体验。 接下来...

    UIScrollView实现图片无限滚动Demo

    在iOS开发中,`UIScrollView` 是一个非常重要的控件,它允许用户...通过深入研究这个示例代码,开发者可以学习到如何巧妙地结合`UIScrollView` 的属性和方法,以及如何与其他UI组件协同工作,以实现更丰富的交互效果。

    iOS使用UIScrollView实现无限循环轮播图效果

    iOS使用UIScrollView实现无限循环轮播图效果 iOS平台中,UIScrollView是一个非常常用的控件,它可以用来实现滚动视图、列表视图等多种样式的视图控件。今天,我们将介绍如何使用UIScrollView实现无限循环轮播图效果...

    UIScrollView实现引导页(AutoLayout布局)

    通过查看源代码和调试,你可以更深入地理解如何结合UIScrollView和AutoLayout实现动态的、响应式的引导页效果。 总之,通过巧妙地使用UIScrollView和AutoLayout,开发者可以创建适应各种屏幕尺寸和设备方向的精美...

    swift-UIScrollView视觉差效果仿凤凰新闻的推荐新闻版块效果

    接着,要实现视觉差效果,我们需要使用到`UIInterpolatingMotionEffect`和`UIMotionEffectGroup`。`UIInterpolatingMotionEffect`负责根据用户的滑动速度调整元素的位置,提供一种运动的错觉。创建两个`...

    iOS利用UIScrollView实现无限滚动效果

    在iOS开发中,实现无限滚动效果常常用于图片轮播器或者欢迎界面,通过UIScrollView的特性可以巧妙地模拟出无限滚动的视觉效果。本教程将详细讲解如何利用UIScrollView来实现这一功能。 首先,我们要理解实现无限...

    iOS开发中使用UIScrollView实现无限循环的图片浏览器

    iOS开发中使用UIScrollView实现无限循环的图片浏览器需要理解ScrollView的工作机制,设置正确的contentSize和pagingEnabled属性,利用UIImageView和autoresizingMask来处理图片显示和布局,以及监听和响应滚动事件来...

    UIScrollView打造轮播效果

    本教程将重点讲解如何利用UIScrollView创建一个iOS10轮播效果,涵盖的关键知识点包括UIScrollView的基础知识、UIPageControl的使用以及自动滚动的实现。 首先,我们需要理解UIScrollView的基本概念。UIScrollView...

    IOS uiscrollview 实现图片的放大缩小滚动浏览

    通过实现UISCrollview 代理方法来实现图片的浏览,及放大缩小。 使用方法: viewWillAppear中实现 showbigImage=[[ShowBigImageBox alloc]init]; [showbigImage setShowBigImageBoxDelegate:self]; ...

    UIScrollView滑动分页效果

    一个基于UIScrollView滑动分页效果类似于网易新闻效果但原理不一样,更简单一些,功能比较适合数据的分页展示,原理是设置UIScrollView的ContentSize根据滑动得到的index ContentOffset到不同的位置,demo非常简单...

    UIScrollView、UIScrollView基本用法、UIScrollView详解

    - **bounces**:控制 UIScrollView 达到边界时是否出现弹性反弹效果。 - **scrollEnabled**:设置 UIScrollView 是否允许滚动。 - **showsHorizontalScrollIndicator** 和 **showsVerticalScrollIndicator**...

    Cocos2d-x 3.0 开发(十四)使用UIScrollView 实现大小不同物品拖动展示

    UI部分一直是cocos2d-x的弱项,而这种境况在3.0版本中将得到改善。让我们从一个曾经的坑入手——CCTableView,来看看这些新特性。相关博客:http://blog.csdn.net/fansongy/article/details/16950241

    UIScrollView代理触摸实现_图片缩放

    本文将深入探讨如何通过`UIScrollView`的代理方法实现图片的触摸缩放功能,这对于创建交互式应用,尤其是图像查看器类应用至关重要。 首先,我们需要了解`UIScrollView`的两个关键属性:`contentSize` 和 `zoom...

    ios-UIScrollView嵌套UIScrollView 悬停效果.zip

    UIScrollView嵌套UIScrollView 悬停效果

Global site tag (gtag.js) - Google Analytics