gpt4 book ai didi

ios - 带有 subview 的 UIPinchGestureRecognizer 问题

转载 作者:行者123 更新时间:2023-11-28 20:54:35 25 4
gpt4 key购买 nike

我有以下代码:

m_singleView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, nWidth - 1, nHeight - 1)];
m_singleView.backgroundColor = [UIColor clearColor];
UIPinchGestureRecognizer *pinchGesture = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(pinch:)];
[pinchGesture setCancelsTouchesInView:YES];
[m_singleView addGestureRecognizer:pinchGesture];
[m_singleView setUserInteractionEnabled:YES];
[m_MainView addSubview:m_singleView];

我遇到的问题是捏合事件由于某种原因没有触发。但是,如果我将行从 [m_singleView addGestureRecognizer:pinchGesture] 更改为 [m_MainView addGestureRecognizer:pinchGesture]; 那么一切都会正常...我可以不添加事件吗只有 subview ?

谢谢!

最佳答案

是的,你可以给 subview 添加手势。我测试了您的代码,如下所示,工作正常。

首先添加委托(delegate)。

@interface ViewController : UIViewController<UIGestureRecognizerDelegate>

- (void)viewDidLoad {
[super viewDidLoad];

UIView *m_singleView = [[UIView alloc] initWithFrame:CGRectMake(50, 50, self.view.frame.size.width - 50, self.view.frame.size.height - 50)];
self.view.backgroundColor=[UIColor greenColor];
m_singleView.backgroundColor = [UIColor redColor];
UIPinchGestureRecognizer *pinchGesture = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(pinch)];
pinchGesture.delegate=self;
[pinchGesture setCancelsTouchesInView:YES];
[m_singleView addGestureRecognizer:pinchGesture];
[m_singleView setUserInteractionEnabled:YES];
[self.view addSubview:m_singleView];
}

-(void)pinch{
NSLog(@"In PInch");
}

你已经使用了捏合手势,所以你可以像下面这样使用它。

enter image description here

关于ios - 带有 subview 的 UIPinchGestureRecognizer 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53937804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com