从 NSInspiration 获取参数值

2024-01-03

有人可以解释一下如何将值传递给使用时被拦截的不存在的方法:

+ (void)forwardInvocation:(NSInvocation *)anInvocation;

+ (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector;

给出如下消息:

[SomeClass doSomething:@"theThing" withSomething:@"aParam"];

我可以毫无问题地获取方法签名,但我对如何获取随其传递的值感到非常困惑。

我是否完全不知道何时应该使用这些方法,或者只是错过了一些东西?


-[NSInvocation getArgument:atIndex:] http://developer.apple.com/mac/library/documentation/cocoa/reference/foundation/Classes/NSInvocation_Class/Reference/Reference.html#//apple_ref/doc/uid/20000212-getArgument_atIndex_

所以在你的情况下,你会像这样使用它:

__unsafe_unretained NSString * firstArgument = nil;
__unsafe_unretained NSString * secondArgument = nil;
[theInvocation getArgument:&firstArgument atIndex:2];
[theInvocation getArgument:&secondArgument atIndex:3];
NSLog(@"Arguments: %@ and %@", firstArgument, secondArgument);

请记住self and _cmd是参数 0 和 1。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 NSInspiration 获取参数值 的相关文章

  • 4.4 中新的 Objective-c 文字

    我可以写 42 这会创建一个NSNumber with int值 42 我可以用变量来做到这一点 例如 someIntVar 显然我尝试过但它不起作用 这很糟糕 因为然后我必须经历 NSNumber numberWithInt someIn
  • iOS通过AVAssetWriter反转音频

    我正在尝试使用 AVAsset 和 AVAssetWriter 在 iOS 中反转音频 以下代码可以正常工作 但输出文件比输入文件短 例如 输入文件的持续时间为 1 59 但输出文件的持续时间为 1 50 且音频内容相同 void reve
  • 动态更新 UIAlertView 消息和换行符问题

    我需要在 UIAlertView 的消息中显示多行文本 我尝试过添加 n 但没有效果 它仍然显示 这是一个示例 但是 如果我将 iPhone 切换为横向模式 它会按照我的预期显示该消息 然后 如果我切换回纵向模式 它也会正确显示 更新 经过
  • 自动布局+基于总行数的动态表高度约束

    首先 这与动态单元格的高度无关 所以不要把它搞混了 我有一个场景 我创建了三张卡 详细信息卡 显示位置的具体详细信息 图表卡 根据选择显示不同的图表 更多详细信息卡 卡显示更多详细信息 以下是上述卡片的屏幕 查看以上屏幕的层次结构 Cont
  • 了解 malloc_history 转储

    如果您曾经问 过如何调试 Objective C 中的释放 分配问题 您将遇到这些可以帮助跟踪问题的环境设置 NSZombieEnabled 释放后保留对象 以便您可以获得指针等 MallocStackLogging 保留对象历史记录以供以
  • MIDI 文件解析

    我们如何使用 Objective C 进行 MIDI 文件解析 在Java中用于MIDI文件解析的包名为javax sound midi Objective c 有什么东西吗 如果你们中有人回复的话将会有很大的帮助 提前致谢 您可以使用 C
  • NSLocale 货币符号,显示金额值之前或之后

    我在用StoreKit在我的应用程序中实现应用程序内购买商店 我有一个自定义设计 这意味着价格的值应该是白色的且较大的 货币符号较小 较暗并与价格值的顶部对齐 我可以使用以下命令毫无问题地获取货币符号NSLocale in SKproduc
  • Objective-C 语法是什么,椭圆式点表示法? “……”

    我在 Joe Hewitt 的 Three20 源代码中注意到了这一点 而且我以前从未在 Objective C 中见过这种特殊的语法 甚至不知道如何在适当的谷歌搜索中引用它 来自 UITableViewDataSource TTSecti
  • 使用 Python 查找 Mac OS X 中的当前活动窗口

    有没有办法使用 Python 在 Mac OS X 上查找给定时间当前活动窗口的应用程序名称 这应该有效 usr bin python from AppKit import NSWorkspace activeAppName NSWorks
  • 如何自定义 NSSlider

    我正在尝试在 Cocoa 中实现一个具有 5 个值的自定义滑块 查看我的演示项目 可以在此处下载 http s000 tinyupload com index php file id 07311576247413689572 http s0
  • 如何改进 iOS 中的 TWTweetComposeViewController 代码?

    我已经实现了以下代码来进行 Twitter 共享 在我的代码中 我尝试测试 iOS 5 如果这不起作用 我会回到使用 ShareKit 的 Twitter 代码进行共享的旧方式 我向同事展示了代码 他建议我的代码可能有缺陷 我需要做两件事
  • iPhone,使用 isKindOfClass 是否被认为是不好的做法?

    例如 如果有一个 处理所有 类型的方法 if obj isKindOfClass class1 else if obj isKindOfClass class2 etc 这是不好的做法吗 是否有更简洁的替代方案或更好的方法来构建代码 在运行
  • 在 Interface Builder 中调整控件的大小以适合其容器

    假设我有一个分割视图 我想用表视图填充其中的一半 我认为这是一个相当常见的用例 有什么方法可以告诉表视图调整自身大小以适应分割视图 还是我真的必须手动调整它的大小 我已经这样做了 就像乔恩 赫斯首先提到的那样 假设您使用的是 Interfa
  • 如何等待 webViewDidFinishLoad 完成

    我有一个初始化 webView 的布尔条件 并在 webViewDidFinishLoad 中加载另一个委托 以便在完成完成后触发 但是 由于布尔值在条件 webViewDidFinishLoad 之前返回 因此页面永远不会完全加载 如何确
  • 使用 Objective-C 在 iPhone 应用程序中显示或隐藏 UIButton

    我在用UITextView编辑文本 我想用两个UIButtons编辑并保存 最初我想显示编辑UIButton 当用户单击编辑时我想显示保存UIButton 当内容成功保存后 我不想再显示保存按钮 我是一名 C 编码员 在 C 中我曾经这样做
  • 使用 Push Transition 效果更改 RootViewcontroller

    在我的iOS应用程序中 我需要更改应用程序之间窗口的rootviewController 因此 当我动态更改我的rootviewcontroller时 它会在更改之前轻拂视图 但我想要的是在更改rootviewcontroller时提供平滑
  • 使用反射的属性类型或类

    我想知道是否可以确定对象属性的类或原始类型 获取所有属性名称和值非常容易 所以答案 https stackoverflow com questions 2299841 objective c introspection reflection
  • iPhone SDK - 在后台线程中运行重复进程

    我有一个iPhone我想在其中每隔一段时间在后台执行一个方法的应用程序1第二 所以在我的主线程中 我有以下代码UIViewController viewDidLoad NSTimer timerWithTimeInterval 1 0 ta
  • Objective-c中的贝塞尔曲线算法

    比我聪明的人可以看一下这个吗 我正在尝试实现我发现的贝塞尔曲线算法here http webtweakers com swag GRAPHICS 0074 PAS html在 Objective c 中 输出是错误的 我想我正确地转换了代码
  • 增加 NSData 的长度

    基本上 我有一个 46 个字符的 NSString 我将其转换为 NSData 我需要将字符串填充到 48 个字符 仅在 NSString 末尾添加 是行不通的 所以 我只是使用以下方法增加了 NSData 的长度 NSString str

随机推荐

  • 对于“Pentium4 及以上”处理器,gcc 的最佳 March 和 mtune 选项是什么

    我的 C 应用程序 使用 g 编译 需要在 Pentium 4 32 位 及更 高版本上运行 但是 它通常与 Core2Duo 或更好的处理器一起使用 我目前正在使用 march pentium4 mtune pentium4 但一些阅读促
  • ggplot结果输出为一份pdf文件,但在R中输出几页

    我至少有 10 个 ggplot 绘图 我们可以称它们为plot1 plot2 我可以将它们输出到单独的 pdf 文件中 但我更喜欢只将它们输出到一个 pdf 文件中 而不是几页 一页 来自 ggplot 的一个图 我尝试列出所有绘图并使用
  • 如何监控Python文件的变化?

    如果代码发生更改 我想重新启动我的 Python Web 应用程序 但是可能有大量文件可以更改 因为导入模块中的文件可能会更改 如何从导入的包 模块中获取实际的文件名 如何高效检测修改过的Python文件 有图书馆可以做到这一点吗 无耻的插
  • 从大表中删除大量记录的有效方法

    我想从 MySql 数据库中的大表 500K 记录 中删除大量记录 200K 我想让这个调用尽可能高效 因为我不希望数据库在执行调用时变得 无响应 我需要删除 早于 10 天的记录 根据created at列 目前我使用 delete fr
  • 无法在 github 操作中获取发布标题

    我添加了 github 操作 该操作会在每次发布时在我们的 slack 通道上发送一条消息 我已经设法从 github 上下文获取仓库名称和标签 https docs github com en actions learn github a
  • 502 - Web 服务器在充当网关或代理服务器时收到无效响应

    当我将应用程序发布到 Azure 网站时 我收到标题错误 但没有任何效果 这不是暂时的 我研究了一下 看起来它与人们遇到的错误问题无关 我启用了日志记录 但没有得到太多重要的输出 日志说 2014 01 15 10 56 26 1MANDO
  • 如何在RecyclerView中实现部分可见的下一项

    我使用 onFling 一次滚动一个项目 并且希望只有一个项目在页面上完全可见 而下一个项目部分可见 我想要这个 我怎样才能在RecyclerView中实现这个目标 这是适配器代码 只是代替了cardView 如图所示 它是imageVie
  • 使用选项卡按钮重新输入后 DataGrid CurrentItem != SelectedItem

    这个简单的 WPF DataGrid
  • JavaScript 中可链接的、基于 Promise 的类接口

    我正在用 JavaScript 编写一个构造函数 它具有以下属性 function WhizBang var promise this publicMethod One function publicMethod One this publ
  • 允许用户从 TableView 复制数据

    我有一个简单的 JavaFX 应用程序 允许用户查询数据库并查看表中的数据 我希望用户能够单击表格单元格 并使用标准剪贴板按键将文本从该单元格复制到剪贴板 对于 Win Linux 为 ctrl c 对于 Mac 为 cmd c 仅供参考
  • 从 Angular 2 服务创建并返回 Observable

    这更多的是一个 最佳实践 问题 共有三名玩家 aComponent a Service and a Model The Component正在呼叫Service从数据库获取数据 这Service正在使用 this people http g
  • React redux oop 类

    来自角度 我曾经为数据库中的每个实体都有一个类 这样的类封装了所有实体行为 例如用户类可以看起来像 export class User static notValid u return u id u id gt 0 u fullname u
  • 关于多线程下载的缺点

    我有一个关于多线程下载的问题 正如您所知 使用多个线程下载可以提高应用程序的性能 但是有一些措施需要尊重 例如线程数 可用带宽等等 但我不太明白 为什么例如 使用多个线程可能会降低应用程序的性能 或者服务器的带宽 质量如何影响多线程应用程序
  • 如何将docker镜像打包到一个文件中

    我有一个名为 ubuntu dev update 15 的 5GB docker 镜像 它是我在本地 Ubuntu 14 开发机器上开发的 在该图像中 我拥有完成开发工作所需的一切 现在我需要能够将此映像发送到不同的 Linux 主机 这样
  • 有没有办法检查计算机的 AD 组成员身份?

    我正在尝试通过 Powershell 检查计算机组成员身份 我希望能够指定某个计算机名称并通过 Powershell 脚本查找该计算机所在的组 我计划在计算机上运行脚本 获取主机名 然后打印出该计算机所在的 AD 组 有没有一种简单的方法可
  • 类型 {1} 上不存在所需的属性 {0}。添加FK时实体框架(模型优先)

    我正在尝试将外键添加到数据库 然后更新模型 更新模型后 应用程序出现以下错误 System Data Entity Core MetadataException was unhandled HResult 2146232007 Messag
  • Linux - Bash - 获取 $releasever 和 $basearch 值?

    我正在编写一个 bash 脚本来使用 reposync 从远程存储库提取包 这样我就可以将我的节点指向本地提取 因此 我试图使本地存储库配置尽可能与 usptream 存储库配置相似 如下所示 upstream baseurl http m
  • 如何将我的图例组织成子组?

    我的条形图的图例当前在一个长列表中列出了图中的所有项目 我希望每列都有图例组 列数是动态的 因此图例必须能够相应调整 library phyloseq packageVersion phyloseq library ggplot2 libr
  • 如何在 Perl 中将简单数组编码为 JSON?

    我见过的所有在 Perl 中将对象编码为 JSON 字符串的示例都涉及哈希 如何将简单数组编码为 JSON 字符串 use strict use warnings use JSON my arr this is my array my js
  • 从 NSInspiration 获取参数值

    有人可以解释一下如何将值传递给使用时被拦截的不存在的方法 void forwardInvocation NSInvocation anInvocation NSMethodSignature methodSignatureForSelect