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不具备滚动功能,不能显示过多的 ...
随机推荐
- Codeforces 707 E. Garlands (二维树状数组)
题目链接:http://codeforces.com/problemset/problem/707/E 给你nxm的网格,有k条链,每条链上有len个节点,每个节点有一个值. 有q个操作,操作ask问 ...
- sql2008来远程访问sql2005数据库服务器
今天搞了一个下午终于搞定了数据库的远程访问.其基本步骤如下: sql2008的配置: sql server 2008默认是不允许远程连接的,sa帐户默认禁用的,如果想要在本地用SSMS连接远程服务器上 ...
- Java图片处理(一)图片合成
如何将多个头像合成类似QQ的群头像? 如上图所示,如何用java将单一的图片合成如上群头像. 在一个正方形外框中,要将多个图片合成上述图片.首先要做的是,依据圆相交的程度,计算圆心坐标与图片间空白区域 ...
- easyui datagrid 的分页刷新按钮
datagrid 刷新bug: 情形: 当用户A,B 同时操作 datagrid时(记录1,记录2.记录3).如果A如果删除记录1, B此时已选中了记录1 ,记录2 , 这时B点击分页中的刷新按 ...
- Queue and Message
#ifndef __QUEUE_H__ #define __QUEUE_H__ #include <stdint.h> #include <stdlib.h> #include ...
- 复选框输入Android Studio 如果修改LogCat的颜色,默认全是黑色看着挺不舒服的
今天一直在查找复选框输入之类的问题,上午正好有机会和大家分享一下. 怎么找到并表现LogCat这里就不需要再讲了吧,主要说一下本篇的主题,如何修改他的颜色 .我们在使用Eclipse的时候应该都用过L ...
- C++ 名称空间
在程序中,只使用 using namespace std; 而不使用其他的名称空间,如using namespace boost; 这样的好处有: 1.可以避免不同名称空间中的名称冲突: 2.可以很清 ...
- 【虚拟化实战】存储设计之六latency
在[虚拟化实战]存储设计之五IOPS中我们讲了评估存储性能的三个关键指标.也就是Throughput,IOPs和latency.以及三者之间的关系.本文深入介绍Latency过高的原因和一些建议. L ...
- 深入了解android平台的jni---注册native函数
注册native函数有两种方法:静态注册和动态注册. 1.静态注册方法 根据函数名找到对应的JNI函数:Java层调用函数时,会从对应的JNI中寻找该函数,如果没有就会报错,如果存在则会建立一个关联联 ...
- libgo协程库:网络性能完爆ASIO异步模型(-O3测试)
在purecpp社区的github组织中有一个协程库:https://github.com/yyzybb537/libgo 近日有用户找到我,想要了解一下libgo库在网络方面的性能,于是选取已入选标 ...