Я хочу передать несколько аргументов функции при щелчке изображения. Вот мой кодПередача аргументов методу #selector в swift
var param1 = 120
var param2 = "hello"
var param3 = "world"
let image: UIImage = UIImage(named: "imageName")!
bgImage = UIImageView(image: image)
let singleTap = UITapGestureRecognizer(target: self, action:#selector(WelcomeViewController.tapDetected(_:secondParam:thirdParam:)))
singleTap.numberOfTapsRequired = 1
bgImage!.userInteractionEnabled = true
bgImage!.addGestureRecognizer(singleTap)
вызова функции
func tapDetected(firstParam: Int, secondParam: String, thirdParam: String) {
print("Single Tap on imageview")
print(firstParam) //print 120
print(secondParam) // print hello
print(thirdParam) /print world
}
Как я могу передать аргументы, так что я могу получить правильные значения?
В этом URL-адресе они упоминают что-то, связанное с несколькими аргументами в swift 2.2 http://stackoverflow.com/questions/36166248/understanding-swift-2-2-selector-syntax-selector – Vinod
@Vinod Вы можете определить Selector with любое число/имена аргументов, но нам нужно, чтобы поддержка UITapGestureRecognizer поддерживала их, вызывать селектор с определенными параметрами, а UITapGestureRecognizer не имеет этой возможности. –