进击的KFC:UI(七)滚动视图 和 分页按钮
来源:互联网 发布:会员返利系统源码 编辑:程序博客网 时间:2024/06/04 08:16
一.pragma mark - UIScrollView滚动视图
思考套路:
1.找适合的代理方法
2.从方法中 操作要改变的
3.判断时的条件:偏移量,活动范围,当前的scrollView
// 1.初始化UIScrollView *scrollView = [[UIScrollView alloc]initWithFrame:[UIScreen mainScreen].bounds];// 2.设置属性scrollView.background = [UIColor yellowColor];// 设置显示内容的区域(是滑动的范围) 我们滑动的是scrollView,不是图片scrollView.contentSize = CGSizeMake(KScreenWidth * 3,KScreenHeight * 2);// 设置偏移量 (指的是把scrollView的原点从(0,0)偏移到(x,y));scrollView.contentOffSet = CGPointMake(x,y);// 关闭滚动条 (默认是显示的)scrollView.showHorizontalScrollIndicator = NO;scrollView.showVerticalScrollIndicator = NO;// 设置整页滑动scrollView.pagingEditing = YES;// 设置回弹效果scrollView.bounces = YES; // 默认是YESscrollView.alwaysBouncesHorizontal = YES; // 开启水平方向上的回弹;scrollView.alwaysBouncesVertical = YES; // 开启竖直方向上的回弹;// 设置缩放的比例scrollView.minimumZoomScale = 0.5; // 最小是原来的一半scrollView.maximumZoomScale = 2; // 最大是原来的两倍[scrollView setZoomScale:1 animated:YES]; // 还原原来的比例,且有动画// 设置代理,遵循的是<UIScrollViewDelegate>协议scrollView.delegate = self;
二.pragma mark - UIScrollViewDelegate协议
1.一滑动就触发- (void)scrollViewDidScroll:(UIScrollView *)scrollView { NSLog(@"滑动时,一直在触发");}2.一缩放就触发- (void)scrollViewDidZoom:(UIScrollView *)scrollView{ NSLog(@"一缩放就触发"); // 缩放时按中心点来缩放,这样图片的中心位置就不会发生变化 UIImageView *imageView = scrollView.subViews[0]; imageView.center = self.view.center;}3.实现缩放的方法// 指定一个要缩放的师徒(肯定是ScrollView的子视图),一般是UIImageView- (void)viewForZoomingInScrollView:(UIScrollView *)scrollView { // 因为该scrollView上只有一个试图 return scrollView.subViews[0];}4.缩放已经结束- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:()view atScale:(CGFloat)scale { NSLog(@"缩放已经结束");}5.将要开始拖拽 (最初调用的方法)- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{ NSLog(@"将要开始拖拽");}6.已经结束拖拽- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelate{ NSLog(@“已经结束拖拽”);}7.将要开始减速- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{ NSLog(@"将要开始减速");}8.已经结束减速 (停下来)- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView { NSLog(@"已经结束减速");}9.改变偏移量的动画结束时,触发- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{ NSLog(@“动画结束后触发");}
二.pragma mark - UIPageControl 分页按钮
// 初始化UIPageControl *pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(100,100,200,50)];// 设置属性// 设置一共多少页pageControl.numberOfPage = 5;// 设置当前显示第几页ageControl.currentPage = 1;// 设置 未选中的 和 当前选中的点的填充颜色pageControl.pageIndicatorTintColor = [UIColor greenColor];pageControl.CurrentPageIndicatorTintColor = [UIColor redColor];// 给pageControl添加方法[pageControl addTarget:self action:@selector(change:)forControlEvents:(UIControlEventValueChanged)];// 显示self.view addSubView:pageControl;
0 0
- 进击的KFC:UI(七)滚动视图 和 分页按钮
- 进击的KFC:UI(三)自定义视图、视图控制器
- 进击的KFC:UI(二)基础视图、程序启动流程
- 进击的KFC:UI(14)集合视图UICollectionView
- 进击的KFC:UI(十)UITableView的编辑和移动
- 进击的KFC:UI(十一)自定义Cell
- 进击 的KFC:UI(12)动画
- 进击的KFC:UI(13)多线程
- 进击的KFC: translucent 和 automaticallyAdjustsScrollViewInsets
- 进击的KFC:OC(七)类的扩展
- 进击的KFC:UI(一)UIView及其子类
- 进击的KFC:UI(五)手势识别器
- 进击的KFC:UI(六)UISegmentControl,UISlider,NSTimer,UIImageView
- 进击的KFC:UI(八)导航试图控制器,传值
- 进击的KFC:UI(九)UITableView 表示图
- 进击的KFC:懒加载
- 进击的KFC:链式编程
- 进击的KFC:UI(四)实现划屏效果,用View实现Button的效果
- ios demo大全
- eclipse报错:org.eclipse.swt.custom.StyledText.getScrollbarsMode()
- android中init.rc文件的解析问题
- MySQL的表分区详解
- C++primer plus第六版课后编程练习答案6.8
- 进击的KFC:UI(七)滚动视图 和 分页按钮
- Appium之java API
- 每天一个linux命令(52):ifconfig命令
- 在PHP语言中使用JSON
- iOS如何让主界面不显示NavigationBar
- cocoapods 初探(一)
- IOS瀑布流实现原理
- 如何实现支持数亿用户的长连消息系统 | Golang高并发案例
- SDUT 3363-数据结构实验之图论七:驴友计划(最短路_dijkstra)