【非凡程序员】UIScrollView、UIPageControl总结

今天学习了UIScrollView在UIScroll中有contentSize方法,contentSize在 UIScrollView里面的尺寸, frame.size在 UIImageView控件的尺寸。对于代码实现UIScroll要注意实例化UIScroll后,需要设置控件尺寸。即:

_scrollView=[[UIScrollViewalloc]initWithFrame:CGRectMake(32.5100300,300)];这句等号前是一个在接口文件里的属性定义,@property(nonatomic,strong)UIScrollViewalloc *scrollView;


UIScrollView本身不能滚动,相当一个容器,滚动的是图片。所以需要以实例化方式同样步骤生成一个承载图的UIImageView。即:

  _imageView=[[UIImageViewalloc]initWithFrame:CGRectMake(i*3000300,300)];

给图片控件一个图片:

    NSString *str=[NSStringstringWithFormat:@"%i.jpg",i+1];

    


        _imageView.image=[UIImageimageNamed:str];

最后给滚动控件加上图片控件

       [_scrollView addSubview:_imageView];

此时,要给滚动文件加尺寸:

 _scrollView.contentSize=CGSizeMake(,,,);

最后给页面加上滚动控件:

    [self.viewaddSubview:_scrollView];

滚动控件是否可以翻页的方法:  _scrollView.pagingEnabled = YES;这个不是必要实现的

UIScrollView是有代理协议的<UIScrollViewDelegate>遵守这个协议

  _scrollView.delegate=self;

必要实现方法:

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView

{

       return_imageView;//返回View

}


其他方法:

    //从那个坐标开始:    _ScrollView.contentOffset=CGPointMake(200, 200);

   //向哪里移动,哪里空出多少,坐标设置上-左-下-右

   _ScrollView.contentInset=UIEdgeInsetsMake(0, 100, 100, 100);

      //是否显示水平尺度,即下方的横向滚动条

   _ScrollView.showsHorizontalScrollIndicator=NO;

     //是否显示垂直尺度,即下方的纵向滚动条

   _ScrollView.showsVerticalScrollIndicator=NO;

    //代码块封装自动滚动

    [UIViewanimateWithDuration:1.0fanimations:^{

        _scrollView.contentOffset=CGPointMake(100, 300);

    }];

// 开始拖拽的时候调用

- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView

//结束时

 - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate


对于UIPageView

//实例化要设置大小

    _PageControl=[[UIPageControlalloc]initWithFrame:CGRectMake(32.5, 330, 300, 100)];

//设置开始和当前页 

   _PageControl.currentPage=0;

    _PageControl.numberOfPages=8;

//设置颜色默认白色不会显示出来

    _PageControl.currentPageIndicatorTintColor=[UIColorblueColor];//当前页

    _PageControl.pageIndicatorTintColor=[UIColorblackColor];//未选页

  //入页面,并前置控件

    [self.viewaddSubview:_PageControl];

    [self.viewaddSubview:_scrollView];

    [self.viewbringSubviewToFront:_PageControl];

 

   练习:http://my.oschina.net/jlong/blog/472713

你可能感兴趣的:(【非凡程序员】UIScrollView、UIPageControl总结)