有关UIScrollView 和 UIPageControll 结合使用

本文介绍了如何使用UIPageControl与UIScrollView实现页面间的联动效果。包括UIPageControl的基本使用、设置总页数、当前页,以及如何通过UIScrollView的拖拽事件更新UIPageControl的当前页。同时,还提供了具体的实现代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

定义:

pageControl = [[[UIPageControl alloc]initWithFrame:CGRectMake(300, 200, 100, 30)]autorelease];//定义初始化  

[pageControl setNumberOfPages:9];//设置总页数  

[pageControl setCurrentPage:0];//设置当前页

 [pageControl addTarget:self action:@selector(clickpagecontrol) forControlEvents:UIControlEventValueChanged];//添加事件  

[self.view addSubview:pageControl];//这个就不解释啦

 

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView1

//减速停止的时候执行,如果没有这个方法慢慢拖动的时候,会导致  offsetofScrollView.x / scroll.frame.size.width 计算不准确  ,

{

CGPoint offsetofScrollView = scrollView1.contentOffset;

[pageControl setCurrentPage:offsetofScrollView.x / scroll.frame.size.width];

}

-(void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate

//停止拖拽的时候开始执行,如果没有这个方法 你会发现当你快速滑动UIScrollview的时候并没有触发scrollViewDidEndDecelerating:(UIScrollView *)scrollView1事件

{

CGPoint offsetofScrollView = scroll.contentOffset;

[pageControl setCurrentPage:offsetofScrollView.x / scroll.frame.size.width];

}

-(void)clickpagecontrol

{//点击UIPageControl 出发的事件  

[scroll scrollRectToVisible:CGRectMake(pageControl.currentPage*scroll.frame.size.width, 0, scroll.frame.size.width , scroll.frame.size.height) animated:YES];

}

转载于:https://www.cnblogs.com/gaoxiao228/archive/2012/05/04/2483547.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值