Swift hat einen Mechanismus namens Erweiterung. Dies ist eine sehr praktische Funktion, mit der Sie Funktionen zu vorhandenen Klassen hinzufügen können, ohne die Klasse zu erben.
Selbst wenn der in der zu entwickelnden Anwendung zu implementierende Verarbeitungsaufwand zunimmt, ist es einfacher, ihn mit effektivem Code auszudrücken, indem die Erweiterung effektiv verwendet wird. Ich denke, dass es ein Mechanismus ist, der verstanden werden muss, um einen Anfänger anzustreben.
DateExtension.swift
extension Date {
func getDateTimeString() -> String {
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.timeZone = TimeZone.current
dateFormatter.dateFormat = "yyyy/MM/dd HH:mm:ss"
return dateFormatter.string(from: self)
}
}
Wenn Sie dies tun, können Sie die Datumszeichenfolge wie unten gezeigt leicht abrufen. Es ist einfacher als die Konvertierungsmethode separat zu implementieren.
datesample.swift
let datestr = Date().getDateTimeString()
Dies ist häufig der Fall, wenn Sie Warnungen im Ansichts-Controller anzeigen möchten. Machen Sie es sich einfach mit Erweiterungen.
UIViewControllerExtension.swift
extension UIViewController {
func displayAlert(title:String, message:String){
let alertController = UIAlertController(title: title, message: message, preferredStyle: .alert)
alertController.addAction(UIAlertAction(title: "OK", style: .default, handler: nil))
self.present(alertController, animated: true, completion: nil)
}
}
Sie können ein Warnfenster mit nur einer Zeile von jedem Ansichts-Controller aus aufrufen.
vcsample.swift
displayAlert(title: "Warnung", message: "Ansatz mit hoher Wärmequelle!")
Xcode: 11.7 iOS: 13.7 Schnelle Version: Swift5
das ist alles
Recommended Posts