gpt4 book ai didi

ios - 从深度嵌套的 UIView 快速调用方法

转载 作者:行者123 更新时间:2023-11-29 00:53:36 24 4
gpt4 key购买 nike

我对在动态添加的 subview 上调用方法感到非常困惑。我知道我犯了一个新手错误,但我就是想不通。

我的层次结构看起来像这样:

TableView
- TableViewCell
- CustomContainer (UIVIew subclass)
- Widget (UIView subclass)
- myButton

Widget 通过 view.addSubview(widget) 添加到 CustomContainer

我在 myButton 上有一个 @IBAction,我想调用在 Widget 类(@IBAction 下方)中声明的 myFunc:

@IBAction func myButtonTapped(sender: AnyObject) {
myFunc()
}

...

func myFunc(){
print("myButton was just tapped")
}

当我点击按钮时,我在控制台中收到无法解决的错误:[myApp.CustomContainer myButtonTapped:]: unrecognized selector sent to instance

我的目标是将与 Widget 相关的所有方法都包含在 Widget 类或类似的地方,从而使其合乎逻辑且易于移动。

我尝试过很多不同的东西,但老实说,我现在只是在黑暗中摸索。如果有人可以提出一种方法,我将不胜感激。

最佳答案

好的,经过一些快速调查和一个小演示:将您的 @IBAction 函数添加到您的自定义 UITableViewCell 子类。

@IBAction in your custom UITableViewCell subclass

将带有 UIButton 的 Widget 添加到 CustomContainer 时,确保它的选择器是 YourCustomUITableViewCellClass.myButtonTapped。您可能还需要考虑的另一个步骤是重构您的代码并且可能不使用如此深的层次结构。

关于ios - 从深度嵌套的 UIView 快速调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37843401/

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