gpt4 book ai didi

ios - 从 UIButton 中获取 UIButton 的标签,该 UIButton 位于此 UIButton 呈现的弹出窗口中

转载 作者:行者123 更新时间:2023-11-30 14:10:35 28 4
gpt4 key购买 nike

标题看起来很长,但我想做的事情很简单。

我有几个相同的按钮排成一排,并将它们的标签设置为 0...n。单击其中任何一个(例如第二个)都会弹出一个弹出 View ,其中有几个代表不同选项的按钮(A、B、C、D)。我想要做的是,如果我们单击选项 B,则将第二个按钮的标题变为 B。

问题是弹出 View 不知道哪个按钮呈现它,因为所有弹出 View 都是同一 UIViewController 类的实例。所以我正在考虑通过将 n 个按钮的标签设置为不同的值来区分它们。但是,我不知道如何从此 UIButton 呈现的弹出窗口内的按钮获取 UIButton 的标签。

非常感谢!

最佳答案

这就是我快速解决这个问题的方法。我将在 popoverViewController 中声明一个委托(delegate)并有一个方法,例如

protocol popOverViewControllerDelegate: class {
func popOverViewController(controller: PopOverViewController,
didSelectItem buttonTitle: String)
}

然后我将向 popOver 中的 UIButton 添加目标操作

button.addTarget(self, action: "selected:",forControlEvents:.TouchUpInside)

select 方法会将发送者传递给它

func selected(sender:UIButton){
delegate?.popOverViewController(self, didSelectItem: sender.currentTitle)
//dismiss viewcontroller
}

记得声明

weak var delegate: popOverViewControllerDelegate!

现在有了调用 popOver 的 View Controller ,该委托(delegate)的子类并实现它的方法。每当选择 popOver 中的按钮时,都会调用此方法并传递该方法的 currentTitle。您现在可以使用它来设置调用 popOver 的按钮的 currentTitle。如果您需要有关最后一部分的进一步帮助,请询问。

关于ios - 从 UIButton 中获取 UIButton 的标签,该 UIButton 位于此 UIButton 呈现的弹出窗口中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31823880/

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