首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当我尝试将TapGestureRecognizer添加到我的UIImageView :发送到类的无法识别的选择器时,我得到了这个错误

当您尝试将TapGestureRecognizer添加到UIImageView时,出现了"发送到类的无法识别的选择器"的错误。这个错误通常是由于选择器方法的命名错误或者方法不存在导致的。

要解决这个问题,您可以按照以下步骤进行排查和修复:

  1. 确保您的选择器方法存在并正确命名。选择器方法是指在添加TapGestureRecognizer时要调用的方法。例如,如果您希望在用户点击UIImageView时调用"handleTap"方法,那么您需要确保"handleTap"方法存在并正确命名。
  2. 检查选择器方法的参数和返回类型是否与TapGestureRecognizer的期望一致。通常,选择器方法应该接受一个参数,该参数是一个UITapGestureRecognizer对象。例如,正确的选择器方法签名可能是"-(void)handleTap:(UITapGestureRecognizer *)gesture"。
  3. 确保您将TapGestureRecognizer添加到UIImageView的实例上,而不是UIImageView类本身。例如,正确的代码可能是"imageView addGestureRecognizer:tapGesture",其中imageView是您的UIImageView实例。
  4. 如果您使用了Objective-C的消息传递语法来调用选择器方法,请确保选择器方法在当前类或其父类中声明和实现。如果选择器方法在其他类中实现,您需要在当前类中引入该类的头文件或者在当前类中声明该方法。

综上所述,当您尝试将TapGestureRecognizer添加到UIImageView时,出现"发送到类的无法识别的选择器"的错误时,您可以按照上述步骤进行排查和修复。如果问题仍然存在,请检查您的代码逻辑和语法是否正确,并确保您的选择器方法存在且正确命名。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Flutter完整开发实战详解(十三、全面深入触摸和滑动原理)

这个胶水 _handlePointerEvent 方法。...,会通过 _size.contains 判断自己是否属于响应区域,确认响应后执行 hitTestChildren 和 hitTestSelf ,尝试添加下级 child 和自己添加进去,这样递归就让我们自下而上到了一个...void close(int pointer) { /// 拿到我们上面 addPointer 添加成员封装 final _GestureArena state = _arenas[...那么问题来了,_checkDown 和 _checkUp 在 UP 事件一次性被执行,那么如果长按住的话,_checkDown 不是没办法正确回调了?...总结下: Down 事件通过 addPointer 加入了 GestureRecognizer 竞技场区域,在没移除情况下,事件可以参加后续事件竞技,在某个事件阶段移除的话,之后事件序列也会无法接受

1.6K30

Gmail XSS漏洞分析

当我尝试这些向量中任何一个发送到 Gmail 很快发现要么有第二个过滤器在起作用,要么是一个完全不同 AMP 版本,有另外安全验证。...或者恰恰相反,真正标签视为假并忽略它。 正如我上面提到已经有一个向量成功触发了 AMP playground中 XSS,但无法绕过 Gmail 过滤器。...但是当浏览器(此时仍然渲染 CSS)遇到这个标签,它会将其视为格式错误 CSS,在真正 标签处终止样式表并渲染带有其onerror属性 标签,从而触发 XSS...但是,如果尝试payload发送到 Gmail,则无法加载整个文档。...0x02开发Payload: 由于除了选择器之外,所有其他 CSS 上下文都对 HTML 实体进行了编码,如果编码选择器发送到 Gmail,会发生什么情况?它会为解码吗?

26120

编写模块化CSS——BEM

然后,当我尝试不同方法开始把认为有意义东西包含在探索过程中。 在这篇文章中,想和大家分享一下如何构建 CSS 以及为什么这样做。 希望它可以帮助你找到你喜欢方法。...当我在寻找一个出色 CSS 架构究竟在找什么 当我将不同方法拼凑在一起以形成自己习惯,我会寻找以下四个特点: 必须 立即知道编辑一个 class 是否安全,会不会干扰其他 CSS。...这是最重要,特别是当我需要在短时间内进行修改时。不想因为改变一处而破坏别的东西。 必须立即知道一个 class 放在这个伟大工程中什么地方,以防止大脑过载。...因此如果使用 -modifier (如某些方法建议),无法一眼看出 -section 是否是修饰符。所以这是一个馊主意。...如果你注意到我上面设置标准,你会注意到我只考虑了两个方面: class 数量必须尽可能少 。 必须立即知道一个 class 放在这个伟大工程中什么地方,以防止大脑过载。

2.1K70

Ext JS 教程-MVC架构 原

创建一个能够帮助我们管理用户账户简单账户管理应用。首先我们需要为这个应用程序取一个全局命名空间。所有ExtJS 4应用程序都应该使用一个单独全局变量,应用程序所有网络其中。...这并不是一个令人兴奋应用程序,但是它展示了使用开始获得结构良好代码有多容易。现在让通过添加一个表格(grid)来丰富这个应用。...接下来我们需要把这个视图添加到我Users控制器中。...这就会告诉应用程序自动加载那个文件,以便我们在启动使用到它。引用程序使用 ExtJS 4 动态加载系统去自动这个文件从服务器推出来。下面是现在当我们刷新页面所看到: ?...我们标记一行,点击保存按钮然后查看请求被准确发送到了 updateUser.json。 ?

3.3K10

iOS 应用瘦身方法思路整理

前言 ---- 前段时间注意到我们 APP 包大小超过100MB了,所以随口跟吕老板说了下能否采用字体文件(.ttf)替代 PNG 图片,吕老板对应用瘦身很感兴趣因此让做下技术调研。...因此当我们需要展示一个图标的时候不再是使用 UIImageView 了,而是 UILabel。 ?...aDecoder可以通过某些key得到其中信息 很显然通过 “UIImage” 这个 key 能拿到图片,但是很遗憾经过多次尝试没能找到图片路径信息。...为了图片名称传给 UIImageView,需要给 aDecoder 添加一个 block 关联引用。 ?...如果所有的hook方法放到一个中,那么只要将这个拖入到项目中,并将项目中所有的bundle下图片都放到对应 Assets.xcassets 文件下那么无需修改一行代码即可将所有的图片迁移到 Assets.xcassets

1K10

干货视频|解析Zabbix5.0重要新功能点底层原理

当我们将该值发送到Zabbix server,在Zabbix server日志文件中,我们会收到很多查询失败错误消息。因为我们主键违规。...但是现在,我们可以在我们Zabbix sender行添加额外参数。-N含义就是有纳秒级支持,这使我们也可以在输入中标明纳秒级。发送值也会将该值发送到我Zabbix server。...我们假设proxy后面有5000个agent,这些agent可以成功向proxy报告,但是proxy却无法数据发送到Server。...在之前,我们必须向主机添加一个监控项,重新加载配置缓存并开始监控。但是有了新监控项测试功能,我们可以测试这些监控项并尝试接收模板级别的值。...你也可以尝试着创建自己模板,并在你所有数据源中对其进行测试,以确保不会出现会严重错误影响到监控系统。

82920

关于apple上架常见问题汇总

在 Apple 拒绝后上传应用程序新版本,如何更改上传版本号? 当我尝试上传修改后应用程序时,它不允许并且收到一条错误消息“ 错误 ITMS-4238:“冗余二进制上传。...上传到苹果商店失败~ App Store Connect 操作错误 下载软件组件已损坏,无法使用。...无法二进制文件上传到 Apple - 所有服务都是绿色 Xcode 停在最后——这是第一次遇到这种情况。所以我得到了运输者。...正在尝试持续集成添加到我们当前应用程序构建部署过程中。...问题:有没有办法设置机器人上传到 iTunes 连接和:如何摆脱这个 “未解决问题”? 答:基本上,Xcode Server不支持应用上传到 App Store。

55810

iOS点击查看大图动画效果

在思考一个动画实现方法,把动画动作进行分解然后再一个个去思考怎么实现是一个好习惯,我们稍微分解一下,这个动画在显示大图和收起大图时候做了这些事情: 打开先显示一个半透明阴影背景; 然后显示一个逐渐变大图片...,直到撑到屏幕边界; 收起先让阴影背景消失; 然后图片逐渐收小到小图原本大小。...首先我们定义三个属性,因为我们需要在多个方法中调用,所以定义为@property: @property (nonatomic, strong) UIImageView *smallImageView...这个例子中图片是中规中矩地放在居中位置,你也可以试一下小图放在其他位置,其实真实app中很少有居中放置,从别的地方伸缩放大缩小效果会更加有趣。...其实是完全可以,只是在工程中有这个需求,所以我就直接拿过来讲了哈哈哈。 这里是示例工程:https://github.com/Cloudox/ViewBigImageDemo

1.6K20

如何手写一个线程池?

手写一个异步工具 是小,新来了一个公司。这个公司呢,有个特点,就是很鼓励大家封装各种实用工具,提高开发效率。 于是就到处看项目的源码,看看有没有什么能改进?果然让发现了。...merge request 第二版 正当我满怀期待工具代码能被合并时候,没想代码被组长杰哥打回来了 「杰哥」:有心封装工具值得鼓励,不过还可以改进一下 「小」:还能再改进?...开心 过了几天小亮急匆匆找到我 「小亮」:小,你工具挺好用。...但是最近遇到了一个问题,用了CountDownLatch批量执行任务,但是这个任务好像卡住了,用jstack想看看线程执行情况,快告诉你异步线程名字设置是啥?...,构造函数中参数也越来越多了,杰哥让写个文档吧,把这个异步工具构造函数和执行流程总结一下,不然新来小伙伴看到这个工具一脸懵可不行!

38420

《Motion Design for iOS》(三十五)

需要做是分开添加这些元素到界面上,这样就可以分开动画它们了。...因为我们没有数据,而且主要目的是演示如何构建动画,就仅仅是保存一些Photoshop里设计图片并手动这些图片添加到界面上去,从顶部箭头和“Dance Club”文本开始。...CGFloat windowWidth = self.window.bounds.size.width; // 背景添加到界面上 UIImageView *backgroundView = [[UIImageView...arrowView.image = [UIImage imageNamed:@"arrow"]; [self.window addSubview:arrowView]; 这里没什么特别的,只是简单地添加一些视图到我们原型主屏幕上...接着设置按钮位置并将它添加到界面上。 这里是目前状态界面,以及点击按钮不同状态演示。 我们UIControlStateHighlighted状态图片只是白色边框换成了白色填充。

48720

关于apple上架常见问题汇总

苹果音乐不断上传 Apple Music 资料库不断上传。今天在 beta 1 中遇到了这个问题,现在在 beta 2 中也遇到了这个问题。已经重新启动了 Mac,但没有区别。...当我尝试从 Xcode 上传应用程序时,出现此错误:请求中内部版本号“”具有无效格式。内部版本号只能包含数字字符 (0-9) 和句点。已经验证版本和构建都存在并且格式正确。这怎么可能解决?...答:有同样问题,只是在 info.plist CFBundleVersion $(CURRENT_PROJECT_VERSION) 中添加了这段代码无法二进制文件上传到 Apple - 所有服务都是绿色...exportArchive:Xcode Server 不支持应用程序上传到 Apple。正在尝试持续集成添加到我们当前应用程序构建部署过程中。...当我尝试上传修改后应用程序时,它不允许并且收到一条错误消息“错误 ITMS-4238:“冗余二进制上传。

1.7K30

《Motion Design for iOS》(三十六)

每一行都是80px高,所以放置它们每一行时候都在Y坐标上加了80。也可以使用Auto Layout来做,但对这个例子来说就有点过于复杂了。 这里是在添加动画前样子。...让我们回到我视图设置代码并修改每个元素frame,这样它们X轴坐标就不再是0了,而是屏幕宽度。这样就会让每个元素左边界并齐屏幕右边界,用户就看不到了。...这种类型弹性动画带来了一些焦虑。这是一个关于仅仅使用一个弹簧动画并不能提升你app整体用户体验很好例子。每种类型动画都给你用户带来了一些感受,而这个带来了错误地感受。...让我们持续时间提升到2.1秒并看看感觉。 比起Jakub原始动画,这个又太弹了,我们damping值也需要调整。...让我们damping从0.3提升到0.6,如我之前所说,它更靠近1这个不弹值。我们还是需要一点弹性,现在让我们来看看它怎么样了。 好了,不是太坏。

50020

在实践中学习类型定义、类型覆盖、CSS Modules

在做一些新项目考虑使用 Vite、Vuejs、Less、TypeScript 这些依赖库构建项目基础,在编写组件使用 TSX 来获得更好类型体验,其中在 Less 模块使用遇到了一个很好解决但初次遇到感觉又无从下手坑...classes; } 当我尝试这段代码放到vite-env.d.ts文件中(.vue就在这儿定义却没有得到我预期结果,但是明明类型错误提示有 ts 发出,Vue文件也是这样识别的,那为啥 Less...小结:在第二节中通过发现 less 模块类型识别的错误联想到了 Ts 识别 vue 模块需要做类型声明定义,并通过百度检索得到了一份 less 模块类型声明代码片段,再 Vite 文档支持下成功覆盖掉默认声明类型...两个不怎么成功尝试 4.1 尝试更改 CSS Modules 文件命名格式: 在源码中找到了下面这块代码,内部使用正则来确定了如何识别一块 CSS 为模块或非模块,但是并没有找到可以通过选项来控制这块逻辑变化...CSS Modules 方法,虽然在最后尝试去除.module 和融合typescript-plugin-css-modules插件选择了放弃,在过度探索中可能会出现更多坑,会陷更深,所以我选择适可而止了

1.6K20

整洁架构之CSS

class 名称,那么当你修改 DOM 元素也仅仅需要修改 DOM 元素,而无需修改样式文件了 上面举这个例子是水平拓展情况,也就是说在某一元素同一级新增一个元素。...但这种方案在实现时会遇到不少问题,首先是修饰设计,例如当我在定义例如 error, primary, warning 修饰,究竟哪些样式属性是可以覆盖哪些是不可以,这必须有事前约定。...而如果我们只想调整局部样式,我们只需要调整 .ancestor 字体大小即可,不会影响到其他元素。 你阅读到这里不难看出来,样式难写对问题在于它太容易影响别的组件,也太容易受别的组件所影响了。...绝大部分人遇到问题是: 以为修改是 A 组件样式,但无形中却影响到了 B 组件; 组件 A 同时受好几组样式影响,无论单独修改谁都无法达到最终效果。...当你需要给你元素添加样式,只需要给这个元素添加对应 class 名称即可: 之所以说这种实践游离于以上体系之外

37510

我们如何检测和解决时间缩短一半

最终,我们找到了一个解决方案,帮助我们精确定位服务错误,并将检测和解决问题所需时间缩短了一半。 但是让我们先回顾一下。...例如,错误、操作缓慢或不完整流程,无论它们是否支持 gRPC 或 Kafka 操作,以及它们与数据库通信。 需要明确是,当我们说"可见性",我们指的是在负载层面上深入细节。...Jaeger 非常出色,但它无法满足我们需求。当我们遇到错误时,我们无法覆盖系统关键部分,导致出现盲点。 Hello,Helios 就在那时,我们发现了 Helios 。...(当我 Span 发送到 Helios ,我们使用 3% 采样率;而当我Span发送到 Jaeger ,采样率更高,但保留时间较短,仅用于开发目的)。...在 Helios 中,这个复杂流程展示如下: 简单而易于理解,对吧? 结束语 我们都熟悉微服务带来挑战,以及在错误发生我们对其一无所知情况。

7710

iOS多线程:『RunLoop』详尽总结RunLoop

文中可能有部分错误,博主过两天整理并更新。...结合在一起就是运行循环意思。哈哈,更愿意翻译为『跑圈』。直观理解就像是不停跑圈。...但是当我们拖动Text View滚动,我们发现:run方法不打印了,也就是说NSTimer不工作了。而当我们松开鼠标的时候,NSTimer就又开始正常工作了。...而当我们拖动Text View时候,RunLoop就结束NSDefaultRunLoopMode,切换到了UITrackingRunLoopMode模式下,这个模式下没有添加NSTimer,所以我们...在项目中Main.storyboard中添加一个UIImageView,并添加属性,并简单添加一下约束(不然无法显示)如下图所示。 ? 添加UIImageView 在项目中拖入一张图片,比如下图。

2K50

微信AI从物到通用图像搜索探索揭秘

微信识图 接下来这个图,是对微信识图一个设计蓝图。...检测篇 | 目标检测应用 在微信界面中,我们看到识别的主体上,有个小绿点。这个就是目标框中心点。在识图中,我们看到 query 头部,有多个主体,这是更直接目标检测出来 bbox。...我们最后会根据标题 NER 后主体,还有所有 bbox 之结果,来决定商品最后 bbox 是哪些。 以图搜图本质上是寻找度量图像之间距离方法,这个距离表示有很多维度。...检索篇 | 通用以图搜图之无监督分库 上面提到检索方案实现,回到通用以图搜图场景,我们无法简单把图片定义成 N 个库出来,所以我们用了无监督分库方法。...另一方面,基于微信图片应用场景,我们开拓出了微信物、长按识图等新尝试入口。相信紧贴用户场景,通过技术不断沉淀积累,一定可以孕育出更多智能产品。 ?

3.2K30

Objective-C Runtime编程指南(1)

该表具有方法selector与其识别的方法特定地址相关联条目。...如果在那里找不到selector,objc_msgSend跟随指向超指针,并尝试在其派发表中找到selector。...可以所有类型返回值传递给发送者,包括id,结构和双精度浮点数。 forwardInvocation:方法可以充当无法别的消息分发中心,将其分发给不同接收者。...或者它可以是一个中转站,所有信息发送到同一个目的地。 它可以一条消息翻译成另一条消息,或者简单地“吞下”一些消息,所以没有响应,也没有错误。...这个对象可以自己做一些事情,比如回答关于数据问题,但是大多数情况下它只是为更大对象提供一个地方,并且当时间到了消息转发给它。

75920
领券