實作 UIScrollViewDelegate 的 scrollViewDidScroll:,根據 contentOffset.x 計算當前頁碼,切換背景顏色。
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
CGFloat pageWidth = 360; // 單頁寬度
NSInteger page = floor(scrollView.contentOffset.x / pageWidth);
if (page == 1) {
self.scrollView.backgroundColor = [UIColor greenColor]; // 第 2 頁
} else {
self.scrollView.backgroundColor = [UIColor blueColor]; // 第 1 頁
}
}
scrollView.delegate = self;
scrollView.pagingEnabled = YES;
scrollView.contentSize = CGSizeMake(pageWidth * totalPages, scrollView.bounds.size.height);
pageWidth 需與實際分頁寬度一致。