滚动视图
来源:互联网 发布:nba2k17乔丹动作数据 编辑:程序博客网 时间:2024/05/01 23:37
UIScrollView:为了显示多于一个屏幕的内容或者超过你能放在内存中的内容
/////记得添加 代理 <UIScrollViewDelegate>
UIScrollView* sv = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
[self.view addSubview:sv];
[sv release];
//常用属性
//真正大小,在这里frame仅代表可视位置和范围
sv.contentSize = CGSizeMake(320 * 17, 460 * 2);
//偏移量,frame左上角顶点相对于contentView左上角顶点的偏移量
sv.contentOffset = CGPointMake(0, 0);
//[sv setContentOffset: animated:]
//分页
sv.pagingEnabled = YES;
//设置额外的空间
sv.contentInset = UIEdgeInsetsMake(0, 0, 0, 0);
//锁定方向,左右滑动和上下滑动不能同时进行
sv.directionalLockEnabled = YES;
//反弹效果
sv.bounces = YES;
//水平方向上保持反弹效果
sv.alwaysBounceHorizontal = YES;
//垂直方向上保持反弹效果
sv.alwaysBounceVertical = YES;
//开启滑动
sv.scrollEnabled = YES;
//隐藏水平状态条
sv.showsHorizontalScrollIndicator = YES;
//隐藏垂直状态条
sv.showsVerticalScrollIndicator = YES;
//状态条位置
//sv.scrollIndicatorInsets = UIEdgeInsetsMake(100, 100, 100, 100);
//状态条类型
sv.indicatorStyle = UIScrollViewIndicatorStyleDefault;
//减速速率 范围0~1
sv.decelerationRate = 0.5;
//delaysContentTouches
//sv.delaysContentTouches = NO;
sv.delegate = self;
sv.tag = 10;
//添加内容 图片
for
(int i = 0; i < 17; i++) {
UIScrollView* subSv = [[UIScrollView alloc] initWithFrame:CGRectMake(i * 320, 0, 320, 460)];
subSv.delegate = self;
subSv.minimumZoomScale = 0.5;
subSv.maximumZoomScale = 2.0;
[sv addSubview:subSv];
[subSv release];
UIImageView* imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@
"10_%d.jpg"
,i]];
[subSv addSubview:imageView];
[imageView release];
}
//这个button 只显示在第一张图片上
UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(100, 100, 100, 40);
button.backgroundColor = [UIColor yellowColor];
[sv addSubview:button];
[button addTarget:self action:@selector(buttonClick) forControlEvents:UIControlEventTouchUpInside];
///事件
- (void)buttonClick{
NSLog(@
"点击了"
);
// UIScrollView* sv = (UIScrollView*)[self.view viewWithTag:10];
// [sv setContentOffset:CGPointMake(320 * 5, 0) animated:YES];
self.view.hidden=YES;
}
//缩放
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{
if
(scrollView.tag == 10) {
return
nil;
}
for
(UIView* view in scrollView.subviews) {
if
([view isKindOfClass:[UIImageView
class
]]) {
return
view;
}
}
return
nil;
}
//滑动调用,contentOffSet发生偏移
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
//int page = scrollView.contentOffset.x / 320;
//NSLog(@"%d",page);
}
//将要开始拖拽
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{
NSLog(@
"将要开始拖拽"
);
}
//将要结束拖拽
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{
NSLog(@
"将要结束拖拽"
);
}
//结束拖拽
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
NSLog(@
"结束拖拽 %d"
,decelerate);
}
//将要开始减速
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{
NSLog(@
"将要开始减速"
);
}
//结束减速
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
NSLog(@
"结束减速"
);
}
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{
NSLog(@
"结束动画"
);
}
- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{
NSLog(@
"要滑动到顶部"
);
return
YES;
}
- (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView{
NSLog(@
"已经滑动到顶部"
);
}
//将要开始缩放
- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view{
NSLog(@
"开始缩放"
);
}
//正在缩放
- (void)scrollViewDidZoom:(UIScrollView *)scrollView{
NSLog(@
"缩放中"
);
}
//结束缩放
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{
NSLog(@
"缩放结束:%f"
,scrollView.zoomScale);
}
0 0
- 滚动视图
- 滚动视图
- 滚动视图
- 滚动视图
- UI-滚动视图(滚动视图)
- 滚动视图滚动至顶部
- 滚动视图和网页视图
- 内置视图-滚动视图
- Android视图之滚动视图
- 4. android 滚动视图
- 滚动视图双缓冲
- 滚动视图二
- UIScrollView 滚动视图
- 滚动视图 ScrollView
- UIScrollView 滚动视图
- UIScrollView 滚动视图
- UIScrollView 滚动视图
- ScrollView 滚动视图组件
- 1、UI基础
- Eclipse 常用 插件安装
- Spring MVC入门
- 黑马程序员__IO流
- Qt 3D的研究(五):Gooch Shader
- 滚动视图
- CodeForces 264A Escape from Stones dfs
- mac卡,处理方法
- QT系统托盘及托盘菜单
- scala学习笔记:理解stream和view
- C语言中三个基础算法
- Java反射机制
- hdu2586How far away ?
- CodeForces 23A You're Given a String...(字符串处理)