问题标签 [uitapgesturerecognizer]

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 回答
18724 浏览

ios - iOS - UITapGestureRecognizer - 带参数的选择器

在我的应用程序中,我在运行时动态地将图像添加到我的视图中。我可以同时在屏幕上显示多个图像。每个图像都是从一个对象加载的。我在图像中添加了一个 tapGestureRecongnizer,以便在我点击它时调用适当的方法。

我的问题是我不知道我点击了什么图像。我知道我可以调用 tapGestureRecognizer.location 来获取屏幕上的位置,但这对我来说并不是很好。理想情况下,我希望能够将加载图像的对象传递到点击手势中。但是,似乎我只能传入选择器名称“imageTapped:”而不是它的参数。

有谁知道我可以将我的对象作为参数传递给 tapGestureRecongnizer 或者我可以处理它的任何其他方式?

谢谢

布赖恩

0 投票
10 回答
39401 浏览

ios - 如何将 UITapGestureRecognizer 添加到表格视图单元格内的 UILabel ?

我正在使用 NIB 文件来布局自定义表格视图单元格。这个单元格有一个名为 lblName 的带有出口的标签。向此标签添加 UITapGestureRecognizer 永远不会触发关联的事件。我有 userInteractionEnabled = YES。

我猜问题是 UILabel 在 TableView 中,并且表格/单元格视图正在拦截水龙头。我可以对此做些什么吗?

我要做的就是在按下 UILabel 时执行一些自定义操作!我见过的所有这样做的解决方案都是荒谬的。使用标准工具集应该很容易。但显然不是。

这是我正在使用的代码:

0 投票
3 回答
6437 浏览

objective-c - iOS:TapGestureRecognizer 问题

所以我有一个像照片库一样的应用程序,我正在实现用户删除图像的能力。这是设置:我有 9 个 UIImageView、imageView、imageView2 等。我还有一个“编辑”按钮和一个 tapGesture 操作方法。我将一个 Tap Gesture Recognizer 拖到我在 IB 中的视图上,并将其附加到每个 UIImageViews 上。我还将 tapGesture 操作方法附加到每个 UIImageViews。理想情况下,我希望该方法仅在按下“编辑”按钮时才变为活动状态。当用户点击编辑,然后点击他们要删除的图片时,我希望出现一个 UIAlertView,询问他们是否确定要删除它。这是我正在使用的代码:

这段代码显然充满了错误:这一行的“使用未声明的标识符按钮索引”:if (buttonIndex != [alertView cancelButtonIndex])

此行上的“在 PhotoViewController 类型的对象上找不到属性 UIImageView”UIImageView *view = [self.UIImageView];

和这一行的“预期标识符”((UIImageView *)[self.view]).image =nil;

我对编程很陌生,我很惊讶我能做到这一点。所以,我只是想弄清楚我需要如何编辑我的代码以使错误消失,并且只要点击 9 个图像视图之一就可以使用它,并且只有在首先按下编辑按钮。我之前使用标签,效果很好,但是我通过 NSData 保存图像,所以我不能再使用标签了。非常感谢任何帮助,谢谢!

0 投票
1 回答
3031 浏览

ios - 如果在控件的上半部分点击,UITapGestureRecognizer 仅检测点击的控件

我正在尝试在我的 iOS 应用程序上实现一种“帮助模式”。当用户点击帮助按钮时,UITapGestureRecognizer 会拦截对屏幕的触摸,如果它在控件上,则会出现一个带有帮助信息的小弹出窗口。

然而我的问题是,如果我点击控件的上半部分,应用程序只会检测到我已经点击了一个控件。我使用 hitTest:withEvent: 来确定触摸了哪个视图:

UILabel 尤其难以成功命中。

视图在顶部包含一个导航栏,但相当标准。有没有人有类似的问题?有谁知道解决方案?

0 投票
2 回答
1165 浏览

iphone - 带有 UIButton 和 UITapGestureRecognizer 的 UIScrollView

我一直在玩这个代码,但不能正确。

当前行为:即使在点击按钮时,我也可以在 UIScrollView 上自由滚动。当我点击不是按钮的东西时,它会调用一个方法(就像我想要的那样),这是 UITapGestureRecognizer 的结果。但是,我必须按住按钮几秒钟,然后触摸它以触发按钮的 UIControlEventTouchUpInside。

我想要发生的事情:完全一样,但是能够轻松地触摸 UIButton,就像我在它所在的视图上关闭 UITapGestureRecognizer 一样。

这是我的代码:

0 投票
1 回答
714 浏览

ios - 如何让 UISwitch 或 UITextField 响应 UITapGestureRecognizer 而无需分别切换/进入编辑模式?

我有一个自定义 UIViewController,我的所有 ViewController 都继承自它。在这个控制器上,我有一个 UITapGestureRecognizer。我还有一个名为 inHelpMode 的布尔属性。

这个想法是,当视图处于帮助模式时,点击一个控件会弹出一个弹出窗口,其中包含有关控件功能的信息。

这适用于大多数控件,但有两个值得注意的例外:UISwitch 和 UITextField。

第一个切换,第二个进入编辑模式。

当我进入帮助模式时,我尝试在这些控件上将启用设置为 NO,这会阻止控件响应,但也会阻止显示弹出窗口。将 Controller 设置为 UItextField 的委托并覆盖 textFieldShouldBeginEditing 时也会发生同样的情况。

0 投票
1 回答
465 浏览

objective-c - 添加 UITapGestureRecognizer 后 UIButtons 将不起作用

我有以下代码,我将 UITapGestureRecognizer 添加到我的视图中:

我的问题是,当我按下与UIButtons 在同一视图上的其他 s (按钮是在 IB 中创建的)时UITapGestureRecognizer,什么也没有发生。

我想我只向gestureRecognizer添加了一个动作(userTapped :),但是如何添加与创建的其他按钮的交互?

0 投票
1 回答
5769 浏览

xcode - 使用单击手势在 Xcode 中隐藏/取消隐藏按钮或插座

这是我第一次在这里寻求帮助,尽管过去 6 个月我一直潜伏在这个论坛上。所以这里有一个简单的,我知道它以前被问过很多次,但没有一个提供真正有用的简单答案。希望这里有足够好心的人可以通过有用的提示帮助我和许多其他需要这个的人。

所以这就是我已经为隐藏网点所做的:

在头文件中:

并在实现文件上:

我的简单问题是:如果用户再次点击屏幕,如何再次取消隐藏/显示网点?

0 投票
3 回答
26211 浏览

objective-c - 如何检测子视图中的点击手势

快速提问:我如何检测轻击手势识别器是否在它添加到的视图的子视图中?例如。如果我单击已作为子视图添加到已添加轻击手势识别器的背景的对象(例如正方形),我如何检测到它已被轻击?

0 投票
2 回答
1554 浏览

uiimageview - 如何检测以编程方式触摸了哪个子视图

我在网上搜索了很多,但没有找到任何具体的东西。我想这不是一个很大的问题,但我无法弄清楚。

我正在处理 UIImageView“A”,然后添加一些其他 UIImageViews 作为该“A ImageView”的子视图。为所有子视图启用了 UserInteraction。现在在 TouchBegan 方法中,我得到“A ImageView”的子视图数组并将其与 Touch.view 进行比较。但 touch.view 始终等于父视图,即“A ImageView”,并且永远不会返回触摸的子视图。

所以请指导我如何检测触摸了哪个子视图,然后我将通过更新其中心将该子视图移动到新位置。

提前感谢大家,期待您的回复。

问候,