Agg*_*sor 0 xcode objective-c uiscrollview uiimageview ios
我有一个UIScrollview里面有UIImageView.
如果我在添加到滚动视图之前向UIImageView添加手势,则不会触发触摸事件.
我想得到一个点击发生的UIImageView.
我已经看到了一些关于从UIScrollView获取触摸点然后根据位置计算UIImageView的答案 - 但这看起来非常混乱和矫枉过正.
有没有一种简单的方法可以从UIScrollView中的对象获取触摸事件?
为了完整起见.
UIScrollView内部的UIImageView未编程为本机接收触摸事件和手势.
所以你可能想做的是:
>
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapGestureCaptured:)];
singleTap.cancelsTouchesInView = NO;
[myScrollView addGestureRecognizer:singleTap];
Run Code Online (Sandbox Code Playgroud)
>
CustomImageView *imageView = [[CustomImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
[imageView setUserInteractionEnabled:YES];
[scrollView addSubview:imageView];
Run Code Online (Sandbox Code Playgroud)
>
@interface CustomImageView:UIImageView {}
@implementation CustomImageView
- (id)initWithFrame:(CGRect)frame{}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {}
Run Code Online (Sandbox Code Playgroud)
@结束
| 归档时间: |
|
| 查看次数: |
2446 次 |
| 最近记录: |