gpt4 book ai didi

ios - addTarget parentViewController 和 xcode 警告我,我的选择器未声明

转载 作者:行者123 更新时间:2023-12-01 18:17:33 25 4
gpt4 key购买 nike

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

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

最好的祝福

谢谢

最佳答案

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

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

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

关于ios - addTarget parentViewController 和 xcode 警告我,我的选择器未声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20306930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com