Q: Ist es möglich, eine Funktion als Funktionsargument in Swift 3 zu übergeben?Wie man eine Funktion als Funktionsargument in Swift setzt 3
Um meinen Code umzuformieren, möchte ich eine globale Funktion haben. Am Ende dieser Funktion befindet sich eine benutzerdefinierte Schaltfläche mit einem action
Argument.
Was ich möchte, ist etwas wie, eine globale Funktion mit einer Funktion als Argument einrichten.
MyGlobalStuff.swift
...
func getButton(_ myFunc: func, _ title: String) {
let deleteButton = MIAlertController.Button(title: title,
type: .cancel,
config: getDestructiveButtonConfig(),
action: {
myFunc // call here the function pass by argument
})
}
von getButton(..)
mit der übergebenen Funktion innerhalb der gleichen Klasse aufgerufen.
MyViewController.swift
...
getButton(myPrintFunc, "cancel")
func myPrintFunc() {
print("completed")
}
Ist so etwas möglich? Hilfe wird sehr geschätzt.
Suchen Sie das? 'Funktionstypen als Parameter Typen' in https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Functions.html – Santosh
@Santosh Ihr Link deckt meine Frage nicht ab. Ich bin nicht auf der Suche nach Abschluss oder Rückgabewerte –
gut. Eigentlich brauchte ich eine Schließung ... Ich schwöre, ich habe es schon mal ausprobiert. funktioniert nicht. habe es nach den Antworten nochmal versucht, funktioniert ... mein schlechtes.danke dir oder deiner zeit –