ฉันแดงคำตอบมากมายแต่ไม่พบคำตอบที่แน่ชัดสำหรับคำถามของฉัน
ใน Swift ฉันมีวิธีการที่แตกต่างกัน 3 วิธี (หรือมากกว่า) สิ่งเดียวที่พวกเขามีเหมือนกันคือประเภทการคืนสินค้า เช่น
A(a:String)->MyType
B(a:Int,b:String,c:AnyObject,d:Whatever)->MyType
C(a:Int,b:String,c:Other)->MyType
ฉันต้องส่งฟังก์ชันเป็นอาร์กิวเมนต์ของวิธีการเรียน เช่น
myClass.configureIOTDevice(configFile:String, functionToCall:A)
จากนั้นภายในเนื้อหาของวิธีนี้ฉันต้องการโทร:
functionToCall()
อย่างที่คุณเห็นมีปัญหาเกิดขึ้น: จะส่งอาร์กิวเมนต์ที่จำเป็นสำหรับลายเซ็นต่างๆ ได้อย่างไร?
ความช่วยเหลือคำแนะนำและทำไมไม่ชื่นชมมะเขือเทศเน่า :-)
[String: Any]
แล้วคลายแพ็กและเรียกใช้ฟังก์ชันของคุณ จากนั้นคุณจะต้องส่งพจนานุกรมและการปิด([String: Any]) -> MyType
ไปยังฟังก์ชันของคุณ และมันจะเรียกfunctionToCall(dict)
เมื่อถึงเวลา - person vacawama   schedule 03.08.2017perform
และNSSelectorFromString
แต่ก็มีข้อจำกัดเล็กน้อย - person   schedule 03.08.2017