码迷,mamicode.com
首页 > 其他好文 > 详细

ScrollView的使用

时间:2016-01-14 23:48:24      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:

 UIScrollView:UIScrollView是一个滑动视图,可以通过滑动手势放或所缩小显示内容,包含两个子类:                              UITableView和UICollectionView
 
                                                         1.  UIScrollView 

简介:
         该视图是一个滑动视图,也可以通过滑动手势放大或缩小显示的内容
         滑动的前提:视图的大小小于内容的大小
 
 
 
   1.UIScrollViewd的创建(创建的是视图的大小)
 
        1.1(创建视图的大小
              UIScrollView* scrollerView = [[UIScrollView        alloc]initWithFrame:CGRectMake(0, 100,KSCreenWidth, 400)];
 
         1.2设置内容的大小-只需要设置大小,位置不需要再确定(视图的大小小于内容的大小才能滑动,若不设定,默认与视图一样大
 
               scrollerView.contentSize = CGSizeMake(2*KSCreenWidth,2*400);
 
    2.常用属性
 
    2.1滑动视图能否开启滑动
      scrollerView.scrollEnabled = NO;
 
   2.2设置滚动条样式
      scrollerView.indicatorStyle = UIScrollViewIndicatorStyleWhite
 
   2.3设置水平滑动条 显示或关闭 默认yes显示
      scrollerView.showsHorizontalScrollIndicator = NO;
 
   2.4上下滑动条开启
      scrollerView.showsVerticalScrollIndicator = NO;
 
   2.5.关闭反弹效果   
      scrollerView.bouncesZoom = NO;
 
   2.6.设置分页效果
      scrollerView.pagingEnabled = YES;
 
   2.7.设置内容相对于试图的偏移,设置内容偏移量  可以将点的x轴看做左右偏移,Y轴看做是上下偏移(默认是没有偏移的)
        scrollerView.contentOffset =CGPointMake(40, 0);
               3.其它属性
 
 
 
    4.常用代理方法
        scrollerView.delegate = self;
 
 
    
 
                                                      2.  捏合手势的使用 


           ( 能很简单的使?用捏合?手势来进?行缩放,可以缩小或者放?大,只需要实现一个委托?法就可以,简单的?几个步骤就可以让滚动视图的?子视图?支持缩放功能。)
 
 
    1.scrollView(视图的尺寸)
    UIScrollView* scrollView = [[UIScrollView alloc]initWithFrame:[UIScreen mainScreen].bounds];
    scrollView.backgroundColor = [UIColor redColor];
    [self.view addSubview:scrollView];
   
   
    2.设置一张图片视图
    UIImageView* imageView = [[UIImageView alloc]initWithFrame:scrollView.bounds];
    imageView.image = [UIImage imageNamed:@"2.jpg"];
    imageView.tag = 1000;           ¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥
    //把视图加载到我们的滑动视图上
    [scrollView addSubview:imageView];
   
    4.设置scrollView内容视图放大的最大倍数
    scrollView.maximumZoomScale = 4;

    5.设置视图内容缩小的最小倍数
    scrollView.minimumZoomScale = 1;
   
   
    6.签定代理协议
    scrollView.delegate = self;
   

   
}
//必须在scrollView上进行捏合,需要传入需要捏合的图片,利用Tag来获取要捏合的图片
//捏合手势放大缩小时返回视图
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{
   
    UIView* imageView = [scrollView viewWithTag:1000];
    return imageView;
   
   
}
 
    
                                                      3.分页视图

 -(void)creatPageControl{
   
     1.添加分页控件
     UIPageControl* pageC = [[UIPageControl alloc]initWithFrame:CGRectMake(KSWidth/2-80, 300, 160, 50)];

     2.设置分页控件的页数
    pageC.numberOfPages = 3;

     3.设置分页控件的首选页
    pageC.currentPage = 0;

     4.设置选中的颜色
    pageC.currentPageIndicatorTintColor = [UIColor blackColor];

    //5.没选中的颜色
    pageC.pageIndicatorTintColor = [UIColor whiteColor];
    [self.view addSubview:pageC];
   
   
     6.增加点击方法
    [pageC addTarget:self action:@selector(pageAction:) forControlEvents:UIControlEventValueChanged];
   
}
-(void)pageAction:(UIPageControl*)page{
   
     1.获得当前page的页数,当前选中的下标
    NSInteger number = page.currentPage;
   
     2.滑动到我们的scrollerView的某个位置
   
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:.7];
   
     scrollerView.contentOffset = CGPointMake(KSWidth*number, 0);
    [UIView commitAnimations];
   

}
 
//最后实现的
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{
   
     获得我们的scrollerView的偏移量
    NSInteger number = targetContentOffset->x;
   
     设置当前pageC的量
    pageC.currentPage = number/375 ;
   
}

ScrollView的使用

标签:

原文地址:http://www.cnblogs.com/qkyy/p/5131942.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!