滚动视图UIScrollView

Posted 原码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了滚动视图UIScrollView相关的知识,希望对你有一定的参考价值。

int i;

@interface ViewController ()

 

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

   

  

    

    self.myScrollV = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, WIDTH, HEIGHT)];

    self.myScrollV.backgroundColor = [UIColor whiteColor];

    self.myScrollV.contentSize = CGSizeMake(WIDTH * 4, HEIGHT / 4);

    self.myScrollV.delegate = self;

    [self.view addSubview:self.myScrollV];

    

    

    UIImageView *imageV = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, WIDTH, HEIGHT / 4)];

    imageV.image = [UIImage imageNamed:@"/Users/scjy/Desktop/UI代码/SecrolView/SecrolView/屏幕快照 2016-03-11 下午12.54.17.png"];

    [self.myScrollV addSubview:imageV];

    

    UIImageView *imageV1 = [[UIImageView alloc] initWithFrame:CGRectMake(WIDTH, 0, WIDTH , HEIGHT / 4)];

    imageV1.image = [UIImage imageNamed:@"/Users/scjy/Desktop/UI代码/SecrolView/SecrolView/屏幕快照 2016-03-11 下午12.54.27.png"];

    [self.myScrollV addSubview:imageV1];

    

    UIImageView *imageV3 = [[UIImageView alloc] initWithFrame:CGRectMake(WIDTH * 3, 0, WIDTH , HEIGHT / 4)];

    imageV3.image = [UIImage imageNamed:@"/Users/scjy/Desktop/UI代码/SecrolView/SecrolView/屏幕快照 2016-03-11 下午12.54.00.png"];

    [self.myScrollV addSubview:imageV3];

    

    UIImageView *imageV2 = [[UIImageView alloc] initWithFrame:CGRectMake(WIDTH * 2, 0, WIDTH, HEIGHT / 4)];

    imageV2.image = [UIImage imageNamed:@"/Users/scjy/Desktop/UI代码/SecrolView/SecrolView/屏幕快照 2016-03-11 下午12.55.26.png"];

    [self.view addSubview:imageV2];

    

    UIImageView *imageV4 = [[UIImageView alloc] initWithFrame:CGRectMake(WIDTH * 4, 0, WIDTH, HEIGHT / 4)];

    imageV4.image = [UIImage imageNamed:@"/Users/scjy/Desktop/UI代码/SecrolView/SecrolView/屏幕快照 2016-03-11 下午2.29.19.png"];

    [self.view addSubview:imageV4];

    

    self.myScrollV.pagingEnabled = YES;

    //影藏滚动条

    self.myScrollV.showsHorizontalScrollIndicator = NO;

    self.myScrollV.directionalLockEnabled = YES;

    [self.myScrollV addSubview:imageV2];

 

 

   self.page = [[UIPageControl alloc] initWithFrame:CGRectMake(100, HEIGHT / 4 - 50, 200, 40)];

    self.page.backgroundColor = [UIColor clearColor];

    self.page.numberOfPages = 4;

    self.page.currentPage = 0;

    

    

    [self.view addSubview:self.page];

    

   

-(void)scrollViewDidScroll:(UIScrollView *)scrollView

{

    

    

    if (scrollView.contentOffset.x >= 0 && scrollView.contentOffset.x <=  WIDTH * 3)

    {

         self.page.currentPage =(int)(scrollView.contentOffset.x / WIDTH);

    }

    

    else if (scrollView.contentOffset.x < 0)

    {

        scrollView.contentOffset = CGPointMake(WIDTH * 3, scrollView.contentOffset.y);

        self.page.currentPage = (scrollView.frame.size.width -WIDTH) / WIDTH;

    }

 

    

    else if (scrollView.contentOffset.x > 3 * WIDTH)

    {

        scrollView.contentOffset = CGPointMake(0, scrollView.contentOffset.y);

        self.page.currentPage = 0;

        

        

    }

    

 

#define HEIGHT  self.view.frame.size.height

#define WIDTH   self.view.frame.size.width

 

@interface ViewController : UIViewController<UIScrollViewDelegate>

 

@property (strong,nonatomic) UIScrollView *myScrollV;

@property (strong,nonatomic) UIPageControl *page;

 

@end

 

    

    

    

}

以上是关于滚动视图UIScrollView的主要内容,如果未能解决你的问题,请参考以下文章

另一个滚动视图内的滚动视图内的表格视图

在调整滚动视图大小时滚动到滚动视图页面

滚动视图不在自动布局中滚动子视图

如何与作为滚动视图子视图的水平滚动视图交互?

滚动视图内不可滚动的表视图

滚动视图滚动时如何播放取决于滚动视图滚动速度的声音?