oc学习之路----scrollView的代理模式

右图是OC里面scrollView的代理的描述,从这里可以开出来,任何对象都可以作为scorllView的代理对象只要实现了UIScrollViewDelegate这个协议,为什么呢,原因要追究到UIScrollView和delegate的通讯,大致分以下3个:1、在SV被拖拽的时候要给代理发送特定的消息,2、在滚动到特定位置的时候发送特定的消息。3、在用户停止拖拽的 时候也会发送消息。消息即方法,具体调用了以下三个方法,分别是:

所以,要想做SV的代理,必须有这三个方法,而UIScrollViewDelegate正好有这三个方法,至于能不能自己写一个协议,然后包括这三个方法的名字,实现相应的功能,我就不知道了,估计是可以的。

时间: 2024-12-29 13:06:57

oc学习之路----scrollView的代理模式的相关文章

oc学习之路----代理模式

今天刚学完oc的代理模式,觉得有点新奇,第一次接触,原理 A完成一件事,但是自己不能完成,于是他找个代理人B 替他完成这个事情,他们之间便有个协议 (protocol),B继承该协议来完成A代理给他的事情 步骤,先在类A中写一个协议,在协议中声明一些方法,并且在属性中声明一个代理属性,这个属性id<协议>让我想起jquery,我觉得像是过滤掉一些类,也就是说不是任何一个类都可以作为A类的代理,必须实现协议,并继承(不知道用词恰当不恰当),协议的一些方法,至于为什么,我是这样理解的,由于类A中的

oc学习之路----代理模式2-使用步骤

之前已经写过一个个人关于代理模式的一些看法,现在就来总结一下使用代理模式的步骤吧. 1.先搞清楚谁是谁的代理(delegate) ● 2.定义代理协议,协议名称的命名规范:控件类名 + Delegate ● 3.定义代理方法 Ø代理方法一般都定义为@optional Ø代理方法名都以控件名开头 Ø代理方法至少有1个参数,将控件本身传递出去 Ø 4.设置代理(delegate)对象  (比如myView.delegate = xxxx;) Ø代理对象遵守协议 Ø代理对象实现协议里面该实现的方法 Ø

java/android 设计模式学习笔记(9)---代理模式

这篇博客我们来介绍一下代理模式(Proxy Pattern),代理模式也成为委托模式,是一个非常重要的设计模式,不少设计模式也都会有代理模式的影子.代理在我们日常生活中也很常见,比如上网时连接的代理服务器地址,更比如我们平时租房子,将找房子的过程代理给中介等等,都是代理模式在日常生活中的使用例子. 代理模式中的代理对象能够连接任何事物:一个网络连接,一个占用很多内存的大对象,一个文件,或者是一些复制起来代价很高甚至根本不可能复制的一些资源.总之,代理是一个由客户端调用去访问幕后真正服务的包装对象

oc学习之路----QQ聊天界面

用到的技术:自定义cell,通知机制,代理模式 transform 1.自定义cell(通过代码自定义cell) ①首先新建一个类继承UITableViewCell ②重写initWithStyle:reuseIdentifier方法 这里只需要把所有要显示的子控件添加到contenView中,在这一步一般不需要设置属性的, 但是如果是一些子控件中一些静态的属性,字需要一次性设置的话,就在这里 设置,在重写frameSet方法的时候在把一些比较动态的数据填充上去以及设置 每个子控件的frame

JDBC学习笔记(18):通过代理模式来保持用户关闭连接的习惯

在前面的JdbcUtils包中,在关闭连接的时候使用了conn.close()方法,如果关闭了连接,那么放回连接池中的连接就成为无效的连接,为了规范用户关闭连接的习惯,使用代理模式来将连接放回连接池而又不改变用户的程序: 将JdbcUtils工具包改变回原来的情形: 1 package com.xxyh.jdbc; 2 import java.sql.Connection; 3 import java.sql.ResultSet; 4 import java.sql.SQLException;

设计模式学习笔记(一)--代理模式

近日在研究设计模式,感觉代理模式是要重点掌握的,在这里记录一下. 什么是代理模式?比较官方的解释是:为其他对象设置一种代理以控制对实际对象的访问. 为了更好的理解代理模式,这里举个例子.在驻外现场,有一个项目经理."二把手"和若干项目组成员,项目经理每天要安排项目组成员任务,主持晨会,写报告汇报工作进展.可是有几个月项目经理要回总部,这里就需要"二把手"来安排项目组成员任务,主持晨会,写报告汇报工作进展.而在这期间新来的同事只知"二把手",而不识

【OC学习-22】协议和代理双剑合璧——中介找房的代理模式

(1)什么是协议 协议其实是一种接口,创建出来给类(类1)调用,而其他类(类2)可以通过这个协议可以和类1进行通信.所以说它类似于一种接口,实现类和类之间的互动. (2)创建协议 通过New File >>> Objective-C protocol创建.只生成一个.h文件.在这个.h文件里面写方法,分两种@required和@optional,一个是必须实现的方法,另一个是可选实现的方法,默认是required,这种分类方法类似于实例变量的分类. #import <Foundat

Qt 学习之路 :视图代理

与 Qt model/view 架构类似,在自定义用户界面中,代理扮演着重要的角色.模型中的每一个数据项都要通过一个代理向用户展示,事实上,用户看到的可视部分就是代理. 每一个代理都可以访问一系列属性和附加属性.这些属性及附加属性中,有些来自于数据模型,有些则来自于视图.前者为代理提供了每一个数据项的数据信息:后者则是有关视图的状态信息. 代理中最常用到的是来自于视图的附加属性ListView.isCurrentItem和ListView.view.前者是一个布尔值,用于表示代理所代表的数据项是

headFirst学习笔记之十一:代理模式之三保护代理(5.2)

1.动态代理:java在java.lang.reflect包中有自己的代理支持,利用这个包你可以在运行时动态的创建一个代理类,实现一个或者多个接口,并且将方法的调用转发到你指定的类. 保护代理:根据访问权限决定客户可否访问对象的代理. 2.任务:对象村的小伙伴们要相亲啦~请负责帮忙实现约会服务系统. (1)PersonBean接口,允许设置或获取一个人的信息等. 1 public interface PersonBean { 2 public String getName() ; 3 publi