IOS ScrollView的使用 and delegate
ScrollView常用的属性设置
//设置内容尺寸
// CGFloat contentH=self.lastBtn.frame
// .origin.y+self.lastBtn.frame.size.height+10; //10是底部的间距
CGFloat contentH=CGRectGetMaxX(self.lastBtn.frame)+;
self.scrollView.contentSize=CGSizeMake(,contentH); //增加额外的滚动区域(在顶部增加64的区域,在底部增加44的区域)
self.scrollView.contentInset=UIEdgeInsetsMake(, , , );
//设置一开始的滚动位置(往下滚动64)
self.scrollView.contentOffset=CGPointMake(, );
// 隐藏水平滚动条
self.scrollView.showsHorizontalScrollIndicator = NO;
ScrollView的代理(delegate)
当UIScrollView 发生一系列的滚动操作时,会自动通知它的代理(delegate)对象,
给它的代理发送相应的消息,让代理得知它的滚动情况。
代理的用途
1.监听的思想:让一个对象A监听另一个对象的状态(谁监听,谁做代理)
2.通知的思想:一个对象B状态发生了改变做了某些事情,想通知另一个对象A.
//设置代理
self.scrollView.delegate=self; //设置最大和最小的缩放比例
self.scrollView.maximumZoomScale=2.0;
self.scrollView.minimumZoomScale=.;
//继承<UIScrollViewDelegate> @interface MJViewController () <UIScrollViewDelegate> /**
* 当用户开始拖拽scrollView时就会调用
*/
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
NSLog(@"开始拖拽-----");
} /**
* 只要scrollView正在滚动,就会调用
*/
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
NSLog(@"----正在滚动--%@", NSStringFromCGPoint(scrollView.contentOffset));
} /**
* 当用户使用捏合手势的时候会调用
*
* @return 返回的控件就是需要进行缩放的控件
*/
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
NSLog(@"----开始缩放");
return self.minionView;
} /**
* 正在缩放的时候会调用
*/
- (void)scrollViewDidZoom:(UIScrollView *)scrollView
{
NSLog(@"----正在缩放");
}

IOS ScrollView的使用 and delegate的更多相关文章
- iOS scrollview循环播放加缩放
前些日子一直在研究3d的框架没有时间写博客,不过最后需求改了,也没研究出个啥.这段时间出了新的需求,需要循环播放图片,并且滑动的时候中间的图片有缩放的效果.刚开始想在网上搜索,不过并没有找到合适的de ...
- iOS UIApplicatin和它的delegate
每一个UIApplication代表一个应运程序,而且UIApplication是个单例类: ios程序一旦启动,创建的第一个对象就是UIApplication对象: // 拿到UIApplica ...
- [ios]scrollView实现移动与缩放
实现滑动 1.在viewDidLoad中对scrollview的contentSize属性赋值 告诉他滑动范围. 实现缩放 1.在storyboard的scrollview的attribute标签中设 ...
- iOS scrollView中嵌套多个tabeleView处理方案
项目中经常会有这样的需求,scrollView有个头部,当scrollView滚动的时候头部也跟着滚动,同时头部还有一个tab会锁定在某个位置,scrollView中可以放很多不同的view,这些vi ...
- ios scrollView代理的用法
// // ZQRViewController.m // 03-图片缩放 // // Created by apple on 17-08-25. // #import "ZQRViewCon ...
- iOS中 Proxy和的delegate区别
在ios中使用proxy代理模式,经常容易和delegate委托模式混淆. 委托模式(delegate),是简单的强大的模式,可让一个对象扮演另外对象的行为.委托对象保持到另外对象的引用,并在适当的时 ...
- iOS scrollView中嵌套多个tableView处理方案
项目中经常会有这样的需求,scrollView有个头部,当scrollView滚动的时候头部也跟着滚动,同时头部还有一个tab会锁定在某个位置,scrollView中可以放很多不同的view,这些vi ...
- IOS scrollView 图片浏览
// // ViewController.m // 0426 // // Created by apple on 15/4/26. // Copyright (c) 2015年 gense. All ...
- IOS ScrollView放大缩小点击位置并居中
项目中的一个优化案例,提升用户体验,对地铁线路图点击放大.缩小,并且点击位置居中: 正常ScrollView 我们点击某一点比如屏幕右侧,想要点的位置向左移动到中心位置,很简单只有算出该点位置距中心位 ...
随机推荐
- SSH防入侵
1.1 ssh防止入侵方法说明 如何防止SSH登录入侵小结: 1.用密钥登录,不用密码登陆 2.牤牛阵法:解决SSH安全问题 a.防火墙封闭SSH,指定源IP限制(局域网.信任公网) b.开启SSH只 ...
- GM MDI Tech 3 VS GM tech 2
Many customers ask for this question: what is the difference between GM tech 2 and GM MDI Tech 3 sca ...
- 2.3 Rust函数
2.3 函数 [root@itoracle src]# cargo new functions Created binary (application) `functions` package [ro ...
- java——抽象类、接口、二者区别
抽象类: 抽象方法:不包含方法体的方法为抽象方法,抽象方法必须使用abstract关键字来修饰: abstract void method(); 抽象类:当一个类中包含了抽象方法时,该类必须使用abs ...
- my.资质
换算到每1点魔力初始,1点魔力等同于22点法资,等于0.00235点成长. 气血=等级*体力资质*0.002895+体力属性点*成长*7 魔法=等级*法力资质*0.002085+法力属性点*成长*5 ...
- java生成临时令牌和访问令牌
public String getTicket(String logo, String productId) { String aTicket = ""; SimpleDateFo ...
- java实现汉字转为拼音
java实现汉字转为拼音: 1.需要导入pinyin4j.jar package com.loo.pinyin; import net.sourceforge.pinyin4j.PinyinHelpe ...
- Object公用方法
Object是所有类的父类,任何类都默认继承Object. Object类到底实现了哪些方法? 1.clone方法 保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否 ...
- hibernate课程 初探单表映射4-1 课程总结
ORM是一种面向对象编程的方法,用这种方法来避免写数据库底层语言sql语句,这样有利于java的跨平台,扩展.维护.而hirenate是ORM的一种框架 hirbernate开发基本步骤编写配置文档h ...
- 非关系型数据库(NOSQL)-Redis
整理一波Redis 简介,与memcached比较 官网:http://redis.io Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括 ...