摘要:
新建一个ZoomScrollView类,将.h和.m代码复制后,直接在新类中可以直接引用1 #import <UIKit/UIKit.h>2 3 @interface ZoomScrollView : UIScrollView<UIScrollViewDelegate>4 @property (nonatomic,strong) UIImageView* imageView;5 @property (nonatomic,assign) BOOL isZoom;6 @end.m中#import "ZoomScrollView.h"#define Scr 阅读全文
posted @ 2013-04-12 16:52
少年0寂寞
阅读(242)
评论(0)
推荐(0)
摘要:
在滚动过程当中,其实是在修改原点坐标当手指触摸后, scroll view会暂时拦截触摸事件,使用一个计时器,假如在计时器到点后,没有发生手指移动事件,那么,scroll view发送tracking events到被点击的subview假如在计时器到点前,发生了移动事件,那么 scroll view 取消tracking自己发生滚动子类可以重载touchesShouldBegin:withEvent:inContentView: 决定自己是否接收touch事件pagingEnabled当值是YES,会自动滚动到subview的边界,默认是NOtouchesShouldCancelInCont 阅读全文
posted @ 2013-04-12 15:26
少年0寂寞
阅读(249)
评论(0)
推荐(0)
摘要:
contentSize是scrollview可以滚动的区域,比如frame = (0 ,0 ,320 ,480) contentSize = (320 ,960),代表你的scrollview可以上下滚动,滚动区域为frame大小的两倍。contentOffset是scrollview当前显示区域顶点相对于frame顶点的偏移量,比如上个例子你拉到最下面,contentoffset就是(0 ,480),也就是y偏移了480contentInset是scrollview的contentview的顶点相对于scrollview的位置,例如你的contentInset = (0 ,100),那么你的 阅读全文
posted @ 2013-04-12 14:21
少年0寂寞
阅读(172)
评论(0)
推荐(0)
摘要:
委托(delegate)也叫代理是iOS开发中常用的设计模式。我们借助于protocol(参考博文:objective-c协议(protocol))可以很方便的实现这种设计模式。什么是代理?苹果的官方文档给了很清晰的解释:Delegation is a simple and powerful pattern in which one object in a program acts on behalf of, or in coordination with, another object. The delegating object keeps a reference to the other 阅读全文
posted @ 2013-04-12 10:37
少年0寂寞
阅读(251)
评论(0)
推荐(0)
摘要:
Modol View Controller(MVC)是一种最早的也是最成功的可重用的设计模式,70年代的时候首次在smaltalk编写的程序中成功使用。基于MVC设计模式,Cocoa整体架构可以划分为三个子系统:Model, View, Controller,我们可以相应的理解为:数据模型,视图和控制器。Modol View和Controller的角色要想理解MVC设计模式中每个子系统的角色,我们就需要理解一个应用程序的功能和行为。我们知道一个应用程序通常需要存储数据信息,检索数据信息以及把这些数据信息呈现给用户,同时还要允许用户对数据进行编辑(增删查改等操作)。那么MVC的角色就分别为:Mo 阅读全文
posted @ 2013-04-12 10:32
少年0寂寞
阅读(165)
评论(0)
推荐(0)
摘要:
单例模式用于当一个类只能有一个实例的时候,通常情况下这个“单例”代表的是某一个物理设备比如打印机,或是某种不可以有多个实例同时存在的虚拟资源或是系统属性比如一个程序的某个引擎或是数据。用单例模式加以控制是非常有必要的。单例模式需要达到的目的1.封装一个共享的资源2.提供一个固定的实例创建方法3.提供一个标准的实例访问接口单例模式的创建本文以创建一个MySingletonClass的单例模式为例。首先,我们需要定义一个类MySingletonClass.[cpp]view plaincopy@interfaceMySingletonClass:NSObject{}并且为其添加一个类方法(注意,这 阅读全文
posted @ 2013-04-12 10:27
少年0寂寞
阅读(144)
评论(0)
推荐(0)
摘要:
什么是CategoryCategory模式用于向已经存在的类添加方法从而达到扩展已有类的目的,在很多情形下Category也是比创建子类更优的选择。新添加的方法同样也会被被扩展的类的所有子类自动继承。当知道已有类中某个方法有BUG,但是这个类是以库的形式存在的,我们无法直接修改源代码的时候,Category也可以用于替代这个已有类中某个方法的实体,从而达到修复BUG的目的。然而却没有什么便捷的途径可以去调用已有类中原有的那个被替换掉方法实体了。需要注意的是,当准备有Category来替换某一个方法的时候,一定要保证实现原来方法的所有功能,否则这种替代就是没有意义而且会引起新的BUG。和子类不同 阅读全文
posted @ 2013-04-12 10:25
少年0寂寞
阅读(130)
评论(0)
推荐(0)

浙公网安备 33010602011771号