Objective c 如何使用相同名称(NSNotificationCenter postNotificationName)切换方法?

Objective c 如何使用相同名称(NSNotificationCenter postNotificationName)切换方法?,objective-c,method-swizzling,Objective C,Method Swizzling,我对swizzling方法相当陌生,我想用它来解决我遇到的一个问题,这个问题很可能是对NSNotificationCenter的错误调用造成的。要做到这一点,我想swizzle注销对NSNotificationCenter的postNotification方法的每次调用。我遇到的问题是,有两个方法的名称开头相同(以下是它们可能的swizzled实现): 我如何通过如下调用将它们识别为单独的选择器 SEL originalSelector = ... 他们不是都有表格吗 SEL original

我对swizzling方法相当陌生,我想用它来解决我遇到的一个问题,这个问题很可能是对NSNotificationCenter的错误调用造成的。要做到这一点,我想swizzle注销对NSNotificationCenter的postNotification方法的每次调用。我遇到的问题是,有两个方法的名称开头相同(以下是它们可能的swizzled实现):

我如何通过如下调用将它们识别为单独的选择器

SEL originalSelector = ...
他们不是都有表格吗

SEL originalSelector = @selector(postNotificationName:)

我遗漏了什么?

否。这些方法的名称是
postNotificationName:object:
postNotificationName:object:userInfo:
,因此它们不相同。

否。这些方法的名称是
postNotificationName:object:
postNotificationName:object:userInfo:
,所以他们不一样

SEL originalSelector = @selector(postNotificationName:)