UIScrollView属性及代理方法总结
来源:互联网 发布:算法第四版百度云 编辑:程序博客网 时间:2024/05/16 11:35
首先实现代理:
#import <UIKit/UIKit.h>@interface ViewController : UIViewController<UIScrollViewDelegate>@property (nonatomic, retain) UIScrollView *scrollView;@end
然后,初始化
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController@synthesize scrollView;- (void)viewDidLoad{ [super viewDidLoad];// Do any additional setup after loading the view, typically from a nib. scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, self.view.frame.size.height)]; //只能一个方向滑动 scrollView.directionalLockEnabled = YES; //是否翻页 scrollView.pagingEnabled = YES; //背景色 scrollView.backgroundColor = [UIColor blueColor]; //垂直方向的滚动指示 scrollView.showsVerticalScrollIndicator = YES; //滚动指示的风格 scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite; //水平方向的滚动指示 scrollView.showsHorizontalScrollIndicator = NO; //指定代理 scrollView.delegate = self; //在scrollView上添加一张图片 //图片高度是视图高度的2倍 CGRect imgFrame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height*2); UIImageView *imgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"test.png"]]; [imgView setFrame:imgFrame]; //imgView内容显示样式 [imgView setContentMode:UIViewContentModeScaleAspectFit]; //将imgView添加到scrollView上 [scrollView addSubview:imgView]; //设置scrollView的内容大小与imgView的大小相同 [scrollView setContentSize:CGSizeMake(imgView.frame.size.width, imgView.frame.size.height)]; [self.view addSubview:scrollView]; }
代理方法的使用:
#pragma mark - UIScrollView Delegate Methods/*调用时机:当 contentOffSet 改变时调用*/- (void)scrollViewDidScroll:(UIScrollView *)scrollView{ /* 在这里你可以写上关于UIPageControl的页面设置的算法。如下 int index = fabs(scrollView.contentOffset.x) /scrollView.frame.size.width; pageControl.currentPage = index; */}//缩放比例改变时调用- (void)scrollViewDidZoom:(UIScrollView *)scrollView{ NSLog(@"zoom scale 改变");}// 当开始拖拽时调用(需要拖拽一定的时间或距离)- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{ NSLog(@"开始拖拽");}//将要停止拖拽时调用- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset NS_AVAILABLE_IOS(5_0){ //注意该方法常用在当用户滚动完屏幕时加载图片,HTTP请求加载,这样会提高效率 NSLog(@"scrollViewWillEndDragging");}//已经停止拖拽,decelerate默认为true- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{ NSLog(@"scrollViewDidEndDragging");}//将要减速- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView;{ NSLog(@"scrollViewWillBeginDecelerating");}//已经减速- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{ NSLog(@"scrollViewDidEndDecelerating");}//滚动动画停止时执行,代码改变时出发,也就是setContentOffset改变时- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{ // called when setContentOffset/scrollRectVisible:animated: finishes. not called if not animating NSLog(@"scrollViewDidEndScrollingAnimation");}//设置缩放视图,是scrollview的子视图- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{ // return a view that will be scaled. if delegate returns nil, nothing happens UIView *view = [[UIView alloc] init]; return view;}//开始缩放视图时调用- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view{ // called before the scroll view begins zooming its content NSLog(@"scrollViewWillBeginZooming");}//完成缩放时调用- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(CGFloat)scale{ // scale between minimum and maximum. called after any 'bounce' animations NSLog(@"scrollViewDidEndZooming");}//如果你不是完全滚动到滚轴视图的顶部,你可以轻点状态栏,那个可视的滚轴视图会一直滚动到顶部,那是默认行为,你可以通过该方法返回NO来关闭它- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{ // return a yes if you want to scroll to the top. if not defined, assumes YES NSLog(@"scrollViewShouldScrollToTop = yes"); return YES;}- (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView{ // called when scrolling animation finished. may be called immediately if already at top NSLog(@"scrollViewDidScrollToTop");}
0 0
- UIScrollView属性及代理方法总结
- UIScrollView常用属性/常用代理方法总结
- UIScrollView 基本属性 及 常用代理方法
- Swift UIScrollView 属性及代理方法
- iOS学习总结----UIScrollView的常用属性及方法
- UIScrollView常用属性和代理方法
- UIScrollView原理、属性、代理方法及有关功能实现(用纯代码方式)
- iOS开发-UIScrollView代理方法总结
- ios UIScrollView代理方法追踪 及使用
- UIScrollView常用属性及回调方法
- UIScrollView滚动视图属性及方法介绍
- UIScrollView 代理方法
- UIScrollView的代理方法
- UIScrollView代理方法
- UIScrollView代理方法之一
- UIScrollView常用属性以及代理
- UIScrollView的属性总结
- UIScrollView的属性总结
- 28-list去掉重复的值
- 钱穆:古代官制考
- 如何将ECSHOP2.7.3后台左侧菜单中的云服务中心删除掉
- .NET技术索引
- 24-Linux-服务-日志简介
- UIScrollView属性及代理方法总结
- ebay completeSale
- L1范数 系数表达
- Android API指南 - 资源概述
- linux Qt 动态库制作以及使用方法
- Java基础
- 字符串匹配算法
- Entity Framework - Func 引起的数据库全表查询
- poj 2479 Maximum sum