UIScrollView touch_C/C++_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > C/C++ > UIScrollView touch

UIScrollView touch

 2011/1/8 8:15:51  beike  http://beike.javaeye.com  我要评论(0)
  • 摘要:UIScrollView本身无法处理touch事件要想实现,必须对UIScrollView上的subView做touch处理原理十分简单,好比要响应scrollView上的UIImageView,那么请创建一个UIImageVIew的子类,由这个自定义的UIImageView来处理touch事件头文件声明如下,供参考:#import<Foundation/Foundation.h>@protocolImageTouchDelegate-(void)imageTouch:
  • 标签:view touch

UIScrollView本身无法处理touch事件
要想实现,必须对UIScrollView上的subView做touch处理
原理十分简单,好比要响应scrollView上的UIImageView,那么请创建一个UIImageVIew的子类,由这个自定义的UIImageView来处理touch事件
头文件声明如下,供参考:
#import <Foundation/Foundation.h>

@protocol ImageTouchDelegate
-(void)imageTouch:(NSSet *)touches withEvent:(UIEvent *)event whichView:(id)imageView;
@end

@interface ImageTouchView : UIImageView?
{
? ? ? ? id<ImageTouchDelegate>??delegate;
? ? ? ? BOOL delegatrue;
}
@property(nonatomic,assign)id<ImageTouchDelegate> delegate;

@end
这个是头文件,源文件可以是这个这样子

@implementation ImageTouchView
@synthesize? ???delegate;

-(id)initWithFrame:(CGRect)frame
{
? ? ? ? if (self == [super initWithFrame:frame])?
? ? ? ? {
? ? ? ? ? ? ? ? [self setUserInteractionEnabled:YES];
? ? ? ? ? ? ? ? delegatrue=YES;
? ? ? ? }
? ? ? ? return??self;
}
- (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view
{
? ? ? ? return YES;
}


-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
? ? ? ? if (delegatrue)
? ? ? ? {
? ? ? ? ? ? ? ? [delegate imageTouch:touches withEvent:event whichView:self];
? ? ? ? }

发表评论
用户名: 匿名