iOS - UI - UIScrollView
1、UIScrollView 滚动视图
// 滚动视图
UIScrollView* scrollView = [[UIScrollView alloc]initWithFrame:self.view.bounds];
// **设置滚动内容的大小
//如果size值为0,默认是scroll.bounds的宽高 若设置height为0 则不支持上下滑动
scrollView.contentSize = CGSizeMake(self.view.bounds.size.width * 2, self.view.bounds.size.height * 2);
// ** 设置当前滚动的位置
scrollView.contentOffset = CGPointMake(200, 200);
// 将内容添加到滚动视图上
[scrollView addSubview:imageView];
// 锁定方向
scrollView.directionalLockEnabled = YES;
// 设置弹力效果
scrollView.bounces = NO;
// 当内容大小小于scroll.bouns 的大小默认不可以拖动
// alwaysBounceVertical, alwaysBounceHorizontal 设置为YES,则可以拖动
scrollView.alwaysBounceVertical = YES;
scrollView.alwaysBounceHorizontal = YES;
// 将内容分页展示
scrollView.pagingEnabled = YES;
// 开启是否滚动
scrollView.scrollEnabled = NO;
// 设置是否显示滚动条
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.showsVerticalScrollIndicator = NO;
// 设置滚动条的风格
scrollView.indicatorStyle = UIScrollViewIndicatorStyleBlack;
// 设置是否点击状态栏可以滑至顶端
scrollView.scrollsToTop = NO;
// 给滚动视图添加内边距
scrollView.contentInset = UIEdgeInsetsMake(100, 100, 100, 100);
// 给滚动条添加内边距
scrollView.scrollIndicatorInsets =UIEdgeInsetsMake(50, 0, 0, 0);
// 减速速率0.1~1
scrollView.decelerationRate = 99;
[self.view addSubview:scrollView];
// ** 设置做大缩放比例
scrollView.maximumZoomScale = kMaxZoomScale;
// ** 设置做小缩放比例
scrollView.minimumZoomScale = kMinZoomScale;
// ** 设置缩放的弹力
scrollView.bouncesZoom = YES;
// 缩放至某一区域
[self.scrollView zoomToRect:rect animated:YES];
[self.scrollView setContentOffset:CGPointMake(0, 0) animated:YES];
2、UIScrollView常用代理 <UIScrollViewDelegate>
//正在滚动
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {}
//开始拖拽 手指没有离开屏幕 Dragging拖拽 当用户开始拖拽的时候就调用
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {}
//拖拽结束 手指离开屏幕 当用户停止拖拽的时候调用
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate {}
//开始减速 Decelerating减速
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView {}
//减速停止
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {}
//返回需要缩放的视图
- (nullable UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {}
//开始缩放
- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(nullable UIView *)view {}
//结束缩放
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(nullable UIView *)view atScale:(CGFloat)scale {}
//缩放动作开始至结束
- (void)scrollViewDidZoom:(UIScrollView *)scrollView {}
iOS - UI - UIScrollView的更多相关文章
- IOS UI 第八篇:基本UI
实现图片的滚动,并且自动停止在每张图片上 - (void)viewDidLoad{ [super viewDidLoad]; UIScrollView *scrollView = [[U ...
- [IOS]IOS UI指南
[IOS]IOS UI指南 众所周知,IOS的界面设计,越来越流行,可以说都形成了一个标准,搜集了一些资料,供自己以后学习使用! iOS Human Interface Guidelines (中文翻 ...
- iOS程序-UIScrollView的基本使用
iOS程序-UIScrollView的基本使用 scrollView的几个属性contentSize contentOffset contentInset 1.不能向上滑动很可能是因为contentS ...
- 国外IOS UI指南
国外IOS UI指南 众所周知,IOS的界面设计,越来越流行,可以说都形成了一个标准,搜集了一些资料,供自己以后学习使用! iOS Human Interface Guidelines (中文翻译) ...
- iOS UI的几种模式
iOS UI的几种模式: 1.平凡模式(原生控件组合): 2.新闻模式: 3.播放器模式: 4.微博模式:
- 通过实现一个TableView来理解iOS UI编程
推荐一篇神作: 通过实现一个TableView来理解iOS UI编程 http://blog.jobbole.com/61101/
- iOS:UI系列之UIScrollview和UIPagecontrol
转眼间,又是一天,就这样忙忙碌碌的一天一天的过着, 不过还好,不是浑浑噩噩的,也算是小有所成,劳有所获吧,嘿嘿! 好了,到了总结的时间啦, 下面就为大家简单讲解下我今天学习的内容吧,希望对各位都有所帮 ...
- IOS UI 滚动视图 UIScrollView
UIScrollView 常用属性 scrollView.maximumZoomScale= 2.0; // 缩放最大比例 scrollView.minimumZoomScale = 0.2;// ...
- iOS UI基础-7.0 UIScrollView
概述 移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限.当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容,普通的UIView不具备滚动功能,不能显示过多的 ...
随机推荐
- Perl初识笔记
前两天项目中遇到了一个Perl脚本程序,需要读懂该程序,由于以前重来没有用过Perl语言,所以没法搞定.今天抽空把该语言的基础看了一遍,基本上内读懂Perl脚本程序了吧.真是如网上很多分享的经验所说, ...
- FZU 2129 子序列个数 (递推dp)
题目链接:http://acm.fzu.edu.cn/problem.php?pid=2129 dp[i]表示前i个数的子序列个数 当a[i]在i以前出现过,dp[i] = dp[i - 1]*2 - ...
- AcceptEx与WSAEventSelect和Accept
(转自论坛的一个帖子http://bbs.csdn.net/topics/280032853) AcceptEx主要用于向完成端口 投递一个或多个的连接请求..当有连接时进来,这里分两种情况: 1.A ...
- OpenSSL命令---ciphers
用途: 指令是用来展示用于SSL加密算法的工具.它能够把所有openssl支持的加密算法按照一定规律排列(一般是加密强度).这样可以用来做测试工具,决定使用什么加密算法. 用法: openssl ci ...
- 解决数据库datatime数据在DataGridView里不显示秒的解决
在数据库中正确显示有分有秒,到dataset里的时候也有,但绑定到DataGridView里的时候就没有秒,解决办法: dataGridView1.Columns["record_time& ...
- 使用IBatisNet的网站,修改database.config无效的问题解决
这周五去客户那更新了一个使用了IBatisNet的Web项目,备份了项目.数据库之后,替换更新的文件(含bin目录)却报数据库连接错. 因为是接手的一个维护项目,加上交接有点问题,所以遇到问题只能自己 ...
- [翻译]比较ADO.NET中的不同数据访问技术(Performance Comparison:Data Access Techniques)
Performance Comparison: Data Access Techniques Priya DhawanMicrosoft Developer Network January 2002 ...
- non-manifold Mesh(非流形网格)
三角网格曲面中,大多的算法基于流形网格manifold mesh,其定义如下: 1)Each edge is incident to only one or two faces: 一条网格边为一个或两 ...
- Gulp 学习总结
Gulp 自动化工具开发非常方便,便于上手,值得使用. 一.Gulp安装 gulp是基于NodeJS运行的,所以需要想安装NodeJS. http://nodejs.org/download/ 安装 ...
- iepngfix.htc让PNG-24在IE6中透明的方法(转)
add:360用的一个方法: <!--[if IE 6]> <script src="http://se.360.cn/js/DD_belatedPNG.js"& ...