UIScrollView 常用属性
scrollView.maximumZoomScale= 2.0; // 缩放最大比例
scrollView.minimumZoomScale = 0.2;// 缩放最小比例
scrollView.contentSize= self.view.frame.size +10;// 设置内容大小
scrollView.pagingEnabled=YES; // 允许分页 默认NO
scrollView.scrollEnabled=YES; // 允许滚动 默认YES
scrollView.bounces =NO; // 不允许使用弹簧效果 ,去掉上下弹簧效果就设置这个 默认YES
UIScrollView 常用方法
- (void)scrollViewDidScroll:(UIScrollView*)scrollView; //scrollview 滚动每个偏移位就调用
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView; //scrollview 开始拖拽就调用
-(void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate //scrollview 结束拖拽的时候调用
UIScrollView无法滚动
检查
1.没有设置contentSize
2.没有取消storyboard的autolayout
UIScrollView 各种效果
1.穿透效果+拖动图片显示内容
//要能够让ScrollView进行拖动、滚动效果 首先要设置其内容大小
// scrollView内容大小=当前imageView可见大小
// frame取的大小是基于父控件的大小所以这个效果必须要让imageView的宽高大于view的宽高才有效果
self.scrollView.contentSize =self.imageView.frame.size; // 设置完这个后就可以进行滚动ScrollView、拖动图片了
// contentInset实现 穿透效果 主要就是用内容插入=上面插入 64左边不插入底部插入 44右边不插入 也就是增加ContentSize 能够滚动的大小
self.scrollView.contentInset = UIEdgeInsetsMake(64, 0, 44,0);
// ConntentOffset相对frame.y向上偏移 也就是当前滚轴左上角那个点
self.scrollView.contentOffset =CGPointMake(0, -64);
2.翻页效果
self.scrollView.delegate =self;
for(int i =0;i<3;i++)
{
UIView *view = [[UIViewalloc]init];
//主要是设置第i个view的x坐标
view.frame =CGRectMake(i*[UIScreenmainScreen].bounds.size.width , 0,self.view.frame.size.width,self.view.frame.size.height);
int red =arc4random();//随机颜色
int green =arc4random();
int blue =arc4random();
view.backgroundColor= [UIColorcolorWithRed:red/230.0green:green/150.0blue:blue/30.0 alpha:1];
[self.scrollViewaddSubview:view];
}
// 设置scrollview内容大小
self.scrollView.contentSize =CGSizeMake(3*(self.view.frame.size.width),self.view.frame.size.height);