问题标签 [uigesturerecognizer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1399 浏览

iphone - MPMoviePlayerViewController 上的 UIGestureRecognizer

我想知道你们中是否有人遇到过类似的问题,当然碰巧找到了合适或不那么合适(但有效)的解决方案/解决方法。

我正在使用 MPMoviePlayerViewController 并尝试将 Swipe-Gesture Recognizers 添加到 MPMoviePlayerViewControllers 视图中。

moviePlayerViewController = [[MPMoviePlayerViewController alloc]initWithContentURL:[NSURL URLWithString:currentChannel.StreamURI]];
[moviePlayerViewController.movi​​ePlayer setControlStyle:MPMovieControlStyleNone];
moviePlayerViewController.movi​​ePlayer.movi​​eSourceType = MPMovieSourceTypeStreaming;
moviePlayerViewController.movi​​ePlayer.shouldAutoplay = YES;
[moviePlayerViewController.movi​​ePlayer setScalingMode: MPMovieScalingModeAspectFit];

UISwipeGestureRecognizer *swipeGestureRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(previousChannel)];
swipeGestureRight.direction = UISwipeGestureRecognizerDirectionRight;
[myMoviePlayerViewController.view addGestureRecognizer:swipeGestureRight];
[self.view addSubview:moviePlayerViewController.view];

无论如何,它“有点工作”但是当我通过在正在运行的电影播放器​​实例(无论是在模拟器中还是在设备上)上做手势来测试整个事情时,应用程序崩溃并且控制台状态

你们中有人对这个话题有想法吗?

0 投票
1 回答
2617 浏览

iphone - UISwipeGestureRecognizer 滑动距离

任何想法是否有一种简单的方法可以延长滑动在被识别之前必须经过的距离。似乎默认值真的很短。这不仅仅是一个水龙头,但只是勉强。我是否需要创建自定义手势识别器来覆盖此距离?

谢谢。

0 投票
2 回答
3354 浏览

iphone - 从 UIPopoverController 拖放到其他 UIView

我将如何实现将 UIView 从后面拖放UIPopoverController到后面UIView

这是 Pages 在其插入媒体弹出窗口中提供的功能,您可以在其中将形状从其中拖出并将其UIPopoverController拖放到主文档中。

我实际上对平底锅UIGestureRecognizers以及它们将在哪里实施感到困惑。

谢谢,

乌梅尔

0 投票
1 回答
956 浏览

uigesturerecognizer - 编写一个循环 UIGestureRecognizer

我正在寻找在 iPhone / iPad 应用程序中创建缓动轮。我知道你可以继承 UIGestureRecognizer 来编写你自己的识别器。有谁知道如何(主要是它背后的数学)创建一个可以检测圆周运动的方法,也许与平移手势相结合?

谢谢

0 投票
1 回答
2096 浏览

objective-c - 在 CALayer 上触摸手势

我正在 CALayer 上进行一些绘图,并希望能够让用户单击绘图的不同部分并触发响应。我尝试研究手势识别器,似乎它们需要绑定到 UIView。知道如何使用 CALayers 获得我想要的行为吗?

0 投票
2 回答
5505 浏览

iphone - 是否可以同时在 2 个类中接收 UITapGestureRecognizer 调用

当用户单击屏幕时,我想在两个类(超级视图和全屏子视图)中调用一个动作。但是,当我将 UITapGestureRecognizer 添加到子视图时,添加到父视图的那个会被覆盖。是否可以在不覆盖添加到父视图的 UITapGestureRecognizer 的情况下将 UITapGestureRecognizer 添加到子视图?如果是这样,我该怎么做?

谢谢!

编辑: 从我的主视图控制器“MyToolBerController”,我从另一个视图控制器添加子视图,如下所示:

我在 MyToolBerController 中添加 GestureRecognizer,如下所示:

这一切都很好,但我需要在点击视图时调用 PhotoViewController 类中的方法以及 MyToolBerController 类中的方法。当我在 photoViewController 中添加另一个 UITapGestureRecognizer 时,它会覆盖在 superView 中添加的 UITapGestureRecognizer。

0 投票
1 回答
905 浏览

iphone - UITableViewCell 背景选择状态在手势结束前翻转

代码

我有一些代码将UILongPressGestureRecognizer手势识别器添加到被调用的_recognizer子类中:UITableViewCellcell

选择-cellLongPressRecognized:器仅在手势结束时记录:

当我点击、按住并释放一个单元格时,我的控制台会显示一条日志消息:

到现在为止还挺好。

问题

问题是表格单元格的背景仅保持选中状态 1.0 秒,即_recognizer.minimumPressDuration属性。

如果我将手指放在设备上的时间超过 1.0 秒,则单元格的背景将从UITableViewCellSelectionStyleBlue选择样式翻转回其通常的、不透明的、未选择的背景。

为了确保这个问题只涉及特定于手势的代码,我-tableView:didSelectRowAtIndexPath:在测试时禁用了。

问题

如何无限期地选择背景,仅在“长按”手势结束时才翻转?

0 投票
1 回答
4239 浏览

iphone - 我需要释放手势识别器吗?

如果我将手势识别器添加到名为 的表格单元格cell中,例如:

我是否需要-removeGestureRecognizer:在某个时候手动调用此单元格,或者当不再使用该单元格时,手势识别器是否会为我移除并释放?

0 投票
3 回答
2912 浏览

iphone - 如何确定捏合手势何时完成(UIGestureRecognizer)

当我的 UIPinchGestureRecognizer 完成捏手势时,我想得到一个回调。此外,很高兴知道完成的手势是放大还是缩小。

有谁知道使用方法吗?还是要怎么做?

谢谢!

0 投票
4 回答
9044 浏览

cocoa-touch - UIGestureRecognizer 阻止表格视图滚动

我正在使用自定义UIGestureRecognizer子类来跟踪课堂上的手势InfoView。该类InfoView是一个UITableViewCell名为 的自定义子类的子视图InfoCell

我已将手势识别器添加到我的根视图(屏幕上其他所有内容的父视图,因为我的自定义手势识别器的目的是允许InfoCell 在表格之间拖动视图)。现在,除了一件事,一切都按原样进行。我在我的UIGestureRecognizer子类中使用以下代码来检测视图上的触摸InfoView

这里的问题是对象上的触摸InfoView被拦截,因此它们没有被转发到UITableView包含 的InfoCell,这是 的父视图InfoView。这意味着我不能再通过拖动视图来滚动表格视图InfoView,这是一个问题,因为InfoView覆盖了整个InfoCell.

有什么办法可以将触摸转发到表格视图上以便它可以滚动?我已经尝试了很多东西:

[super touchesBegan:touches withEvent:event];

[touchView.superview.superview touchesBegan:touches withEvent:event];touchView.superview.superview获取对其父级的引用UITableView

但到目前为止没有任何效果。此外,cancelsTouchesInViewmyUIGestureRecognizer的属性设置为NO,因此不会干扰触摸。

帮助表示赞赏。谢谢!