2
我用Swift 4編寫並嘗試編寫一個函數,發送categoryId作爲操作,但我無法寫入。我認爲我的語法是錯誤的。如果我寫函數沒有參數它不是一個問題但我得到參數函數的錯誤。你能說我如何使用選擇器嗎?Swift 4使用選擇器與多個參數
@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方法。
檢查[該線程](https://stackoverflow.com/q/43251708/6541007)或[此](HTTPS:/ /stackoverflow.com/a/24814958/6541007)。 Swift 4沒有提及'#selector'的用法。 – OOPer
這可能幫助:https://stackoverflow.com/questions/19703767/pass-parameter-to-uitapgesturerecognizer – ozgur
FUNC sendCategoryIdToPackageSelectionVC(的categoryId:智力){ self.performSegue(withIdentifier: 「sequeGoToPackageSelection」,發件人:無) } @objc FUNC callMethod(){ sendCategoryIdToPackageSelectionVC(的categoryId:2) } FUNC addTapFeatures(){ taplabel1 = UITapGestureRecognizer(目標:自,動作:#selector(self.callMethod))? taplabel1 .cancelsTouchesInView =假 } – Yongjoon