如何让UIView在动画中响应touch事件

2025-05-09 01:20:46
推荐回答(1个)
回答1:

UISCrollView本身不支持touch,
需要重写UIImageView类,响应touch事件,委托给你的类处理,
重写UIImageView类代码如下,然后在要添加UIImageView的类中,实现下面代码定义的协议
#import @protocol ImageViewDelegate@optional
-(void)TouchesBegin:(NSInteger)imageTag;@end
@interface CustomizeImageView : UIImageView {
//声明一个代理
id@property (nonatomic,assign) id#import CustomizeImageView.h
@implementation CustomizeImageView
@synthesize delegate;
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
//NSLog(@delegate:%@,self.delegate);
[self.delegate TouchesBegin:self.tag];}
- (void)dealloc {
[super dealloc];}@endUIScrollView把touch事件隔离了,它默认响应的是drag事件。
重写UIImageView类,然后往UIScrollView添加CustomizeImageView,并且把self. delegate = self;
这样,UIImageView就把touch事件委托给别人处理了,
在要处理的类中,实现上述协议即可