/* UIScrollView练习思路
1.先遵循协议 <UIScrollViewDelegate>2.创建UIScrollView窗体的大小
3.创建UIScrollView内容的大小
4.选择起始位置
5.分页操作
6.弹簧效果
7.滚动方向
8.创建UIView放内容进去 */
#import "ViewController.h"
@interface ViewController () {
UIView *view;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 2.创建UIScrollView窗体的大小
UIScrollView *scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 375, 667)];
scrollView.backgroundColor = [UIColor redColor];
[self.view addSubview:scrollView];
scrollView.delegate = self;
// 3.创建UIScrollView内容的大小 8个页面
scrollView.contentSize = CGSizeMake(375*8, 667);
// 4.选择起始位置
scrollView.contentOffset = CGPointZero;
// 5.分页操作
scrollView.pagingEnabled = YES;
// 6.弹簧效果 不要弹簧效果
scrollView.bounces = NO;
// 7.滚动方向
scrollView.showsHorizontalScrollIndicator = YES;
// 8.创建UIView放内容进去
for (int i = 0 ; i< 8 ; i++) {
view = [[UIView alloc]init];
view.frame = CGRectMake(i*375, 0, 375, 667);
view.backgroundColor = [UIColor colorWithRed:arc4random()%256/255. green:arc4random()%256/255. blue:arc4random()%256/255. alpha:1];
[scrollView addSubview:view];
view.tag = i+1;
// label 注意,添加到scrollView里面。不是UIView
UILabel * label = [[UILabel alloc]initWithFrame:CGRectMake(i*375, 0, 50, 50)];
if (7 == i ) {
label.text =@"0";
} else {
label.text = [NSString stringWithFormat:@"%d",i];
}
[scrollView addSubview:label];
}
}
// 实现可左右循环拉动效果
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
CGPoint myPoint = CGPointMake(2625, 667);
if ( scrollView.contentOffset.x == myPoint.x) {
// 如果是最后一张,变为第一张
scrollView.contentOffset = CGPointMake(0, 667);
} else if( scrollView.contentOffset.x == 0) {
// 如果是第一张,变为最后一张
scrollView.contentOffset = CGPointMake(2625, 0);
}
}
@end