【问题标题】:addTarget parentViewController and xcode warning me up than my selector is undeclaredaddTarget parentViewController 和 xcode 警告我,我的选择器未声明
【发布时间】:2013-12-16 21:35:51
【问题描述】:

它比真正的问题更令人好奇,因为它有效。但我不明白 xcode 警告。 在我的应用程序中,我使用 addChildViewController 所以我有一个孩子和一个父母。在我的孩子中,我有一个 UIButton,我想为父母的功能设置事件:它可以工作,但 xcode 说未声明的选择器 parentFunction:/ 我可以声明这个函数来消除这个警告,但它会是死代码(不好的方式)。 或者我可以使用委托,但是当您有直接链接时为什么要使用委托。

[btn addTarget:self.parentViewController action:@selector(parentFunction:) forControlEvents:UIControlEventTouchUpInside];    //undeclared selector parentFunction

最好的问候

谢谢

【问题讨论】:

标签: ios objective-c xcode


【解决方案1】:

您需要导入父视图控制器的 .h 文件,并将 self.parentViewController 转换为该类,否则编译器不知道该方法存在(因为 parentViewController 返回 UIViewController,而不是您的自定义控制器)。

[btn addTarget:(ParentClass *)self.parentViewController action:@selector(parentFunction:) forControlEvents:UIControlEventTouchUpInside];

将 ParentClass 替换为该父级的任何类名。此外,请确保 parentFunction: 在父类中实现(并带有冒号),并在其 .h 文件中声明。

【讨论】:

  • thx (我忘记导入标题:/ 并且它在工作时没有想到)
猜你喜欢
  • 2014-03-03
  • 1970-01-01
  • 2011-09-07
  • 2014-09-23
  • 2014-01-23
  • 2016-07-09
  • 2013-09-05
  • 2015-08-13
  • 2010-11-15
相关资源
最近更新 更多