博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UIScrollView、UIPageControl总结
阅读量:6181 次
发布时间:2019-06-21

本文共 2017 字,大约阅读时间需要 6 分钟。

  hot3.png

今天学习了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];

 

   练习:

转载于:https://my.oschina.net/jlong/blog/472729

你可能感兴趣的文章
Delphi 读取 c# webservice XML的base64编码图片字符串转化图片并显示
查看>>
第三天
查看>>
connector for python
查看>>
等价类划分的应用
查看>>
Web Service(下)
查看>>
trigger()
查看>>
nvm 怎么安装 ?
查看>>
Java VM里的magic
查看>>
[Node.js]Domain模块
查看>>
Linux操作系统文档
查看>>
利用Tensorflow训练自定义数据
查看>>
c++官方文档-枚举-联合体-结构体-typedef-using
查看>>
[题解]UVA11029 Leading and Trailing
查看>>
利用vue-gird-layout 制作可定制桌面 (一)
查看>>
校园社交网站app
查看>>
如何指定某些文件关闭ARC
查看>>
4、跃进表
查看>>
JAVA面向对象的总结(静态函数与static关键字)
查看>>
课堂作业第四周课上作业一
查看>>
使用Java语言开发微信公众平台(七)——音乐消息的回复
查看>>