问题描述
我想实现鼠标滚动到我的应用程序。在谷歌搜索之后,基于一些答案和建议,我添加了 UIPanGestureRecognizer。 但不幸的是,我无法捕获任何鼠标滚轮事件。 这是我的代码:
- (void)viewDidLoad
{
[super viewDidLoad];
if (@available(iOS 13.4,*)) {
UIPanGestureRecognizer *mouseWheelRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(mouseWheelGesture:)];
mouseWheelRecognizer.allowedScrollTypesMask = UIScrollTypeMaskdiscrete;
mouseWheelRecognizer.allowedTouchTypes = @[ @(UITouchTypeIndirectPointer) ];
mouseWheelRecognizer.cancelstouchesInView = NO;
mouseWheelRecognizer.delaystouchesBegan = NO;
mouseWheelRecognizer.delaystouchesEnded = NO;
[self.view addGestureRecognizer:mouseWheelRecognizer];
}
}
-(void)mouseWheelGesture:(UIPanGestureRecognizer *)gesture
{
NSLog(@"Capturing Mouse Wheel");
if (gesture.state == UIGestureRecognizerStateBegan ||
gesture.state == UIGestureRecognizerStateChanged ||
gesture.state == UIGestureRecognizerStateEnded) {
CGPoint veLocity = [gesture veLocityInView:self.view];
if (veLocity.x > 0.0f) {
veLocity.x = -1.0;
} else if (veLocity.x < 0.0f) {
veLocity.x = 1.0f;
}
if (veLocity.y > 0.0f) {
veLocity.y = -1.0;
} else if (veLocity.y < 0.0f) {
veLocity.y = 1.0f;
}
if (veLocity.x != 0.0f || veLocity.y != 0.0f) {
NSLog(@"Do scrolling");
}
}
}
我错过了什么吗? 或者也许还有另一种实现鼠标滚动的方法?
谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)