- (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { // Initialization code _statisScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(7, 9, frame.size.width - 23, frame.size.height - 45)]; _statisScrollView.contentSize = CGSizeMake(_statisScrollView.frame.size.width * 2, _statisScrollView.frame.size.height); _statisScrollView.backgroundColor = [UIColor clearColor]; _statisScrollView.pagingEnabled = YES; _statisScrollView.showsHorizontalScrollIndicator = NO; _statisScrollView.delegate = self; [self addSubview:_statisScrollView]; [_statisScrollView release]; _pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(0, frame.size.height - 40, frame.size.width, 20)]; _pageControl.backgroundColor = [UIColor clearColor]; _pageControl.currentPage = 0; _pageControl.numberOfPages = 2; [_pageControl addTarget:self action:@selector(getChangePage:) forControlEvents:UIControlEventValueChanged]; [self addSubview:_pageControl]; [_pageControl release]; } return self; } - (void)getChangePage:(UIPageControl *)pageControl { int page = pageControl.currentPage; CGRect frame = _statisScrollView.frame; frame.origin.x = frame.size.width * page;//根据页数计算要显示的坐标区域 frame.origin.y = 0; [_statisScrollView scrollRectToVisible:frame animated:YES];//显示 } #pragma mark UIScrollViewDelagete - (void)scrollViewDidScroll:(UIScrollView *)scrollView { CGFloat pageWidth = scrollView.frame.size.width; int page = floor((scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;//根据坐标区域的位置计算当前第几页 _pageControl.currentPage = page;//页数赋值给pageControl的当前页 }
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。