iOS程序-使用UIScrollView实现分页功能

2025-05-09 21:43:01

1、#import <UIKit/UIKit.h>@interface ViewController : UIViewController@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;@end

2、#import "ViewController.h"拭貉强跳#define kCount 8@interface ViewController () <稆糨孝汶;UIScrollViewDelegate>{ UIPageControl *_pageControl;}@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; CGFloat w = self.view.frame.size.width; CGFloat h = self.view.frame.size.height; for (int i = 0; i< kCount; i++) { UIImageView *imageView = [[UIImageView alloc] init]; // 1.设置frame imageView.frame = CGRectMake(i * w, 0, w, h); // 2.设置图片 NSString *imgName = [NSString stringWithFormat:@"0%d.jpg", i + 1]; imageView.image = [UIImage imageNamed:imgName]; [_scrollView addSubview:imageView]; } // height == 0 代表 禁止垂直方向滚动 _scrollView.contentSize = CGSizeMake(kCount * w, 0); _scrollView.showsHorizontalScrollIndicator = NO; _scrollView.pagingEnabled = YES; _scrollView.delegate = self; // 添加PageControl UIPageControl *pageControl = [[UIPageControl alloc] init]; pageControl.center = CGPointMake(w * 0.5, h - 20); pageControl.bounds = CGRectMake(0, 0, 150, 50); pageControl.numberOfPages = kCount; // 一共显示多少个圆点(多少页) // 设置非选中页的圆点颜色 pageControl.pageIndicatorTintColor = [UIColor redColor]; // 设置选中页的圆点颜色 pageControl.currentPageIndicatorTintColor = [UIColor blueColor]; // 禁止默认的点击功能 pageControl.enabled = NO; [self.view addSubview:pageControl]; _pageControl = pageControl;}#pragma mark - UIScrollView的代理方法#pragma mark 当scrollView正在滚动的时候调用- (void)scrollViewDidScroll:(UIScrollView *)scrollView{ int page = scrollView.contentOffset.x / scrollView.frame.size.width; // NSLog(@"%d", page); // 设置页码 _pageControl.currentPage = page;}@end

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢