gpt4 book ai didi

swift3 - Swift 4 使用带有多个参数的选择器

转载 作者:行者123 更新时间:2023-12-04 12:45:30 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Passing arguments to selector in Swift

(6 个回答)



Attach parameter to button.addTarget action in Swift

(11 个回答)


3年前关闭。




我用 Swift 4 编写并尝试编写一个将 categoryId 作为 Action 发送的函数,但我无法编写。我认为我的语法是错误的。如果我编写没有参数的函数,这不是问题,但参数函数出错。你能告诉我如何使用选择器吗?

@objc func sendCategoryIdToPackageSelectionVC(categoryId : Int){
MarketVC.categoryId = categoryId
self.performSegue(withIdentifier: "sequeGoToPackageSelection", sender: nil)
}

func addTapFeatures(){
taplabel1 = UITapGestureRecognizer(target: self, action: #selector(self.sendCategoryIdToPackageSelectionVC(categoryId:2)))
taplabel1?.cancelsTouchesInView = false
self.labelFirst.addGestureRecognizer(taplabel1!)
}

我收到一条错误消息,指出操作选择器未引用任何 objc 方法。

最佳答案

我认为,您不能直接使用选择器来传递参数。
尝试这样的事情
您应该创建一个调用 handleTap(modelObj:myModelObj) 的 @objc 方法。

@objc func someMethod() { // name this properly!
handleTap(modelObj: myModelObj)
}

然后您可以将其作为选择器传递:
#selector(someMethod)

关于swift3 - Swift 4 使用带有多个参数的选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47364524/

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