Hinzufügen UIToolBar, um alle Tastaturen (swift)
Ich versuche, fügen Sie eine benutzerdefinierte UIToolBar, um alle meine Tastaturen mit so wenig Wiederholung. Den Weg bin ich derzeit dabei, es verlangt von mir den code hinzufügen, um alle meine viewDidLoads und weisen Sie jedem textfield als Delegierte zu den viewController ich mit. Ich habe versucht, meinen eigenen UIToolBar Unterklasse, aber ich finde, dass ich nicht wirklich kann, wenn das Ziel für meine "Fertig" und "Abbrechen" - Tasten sind, die sich selbst anzeigen. Hat jemand irgendwelche Vorschläge für die Schaffung eines leicht wiederverwendbaren-toolbar? Vielen Dank im Voraus.
override func viewDidLoad() {
super.viewDidLoad()
var toolBar = UIToolbar()
toolBar.barStyle = UIBarStyle.Default
toolBar.translucent = true
toolBar.tintColor = UIColor(red: 76/255, green: 217/255, blue: 100/255, alpha: 1)
var doneButton = UIBarButtonItem(title: "Done", style: UIBarButtonItemStyle.Done, target: self, action: "donePressed")
var cancelButton = UIBarButtonItem(title: "Cancel", style: UIBarButtonItemStyle.Plain, target: self, action: "cancelPressed")
var spaceButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: nil, action: nil)
toolBar.setItems([cancelButton, spaceButton, doneButton], animated: false)
toolBar.userInteractionEnabled = true
toolBar.sizeToFit()
stateField.inputAccessoryView = toolBar
stateField.delegate = self
InformationsquelleAutor der Frage Vivian | 2015-06-22
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dank Glorfindel ' s Vorschlag und ncerezo die sample-code, den ich löste mein problem mit Erweiterungen.
Obwohl ich immer noch anrufen möchten, müssen Sie den code unten, auf allen Feldern. Ich fühle mich wie kann es einen besseren Weg, ohne zu müssen, rufen Sie die Funktion auf jedes textField, aber für jetzt ist dies definitiv mehr wiederverwendbar.
InformationsquelleAutor der Antwort Vivian
äquivalent von vivian version in swift 3:
InformationsquelleAutor der Antwort alessioarsuffi
Ich habe ein Dienstprogramm, das habe ich mit einige Zeit (portiert Swift von Objective-C) , tut dies und ein wenig mehr, Sie finden es möglicherweise hilfreich:
https://github.com/ncerezo/SwiftKeyboardAccessory
Es erstellt eine Symbolleiste mit mindestens einem "Fertig" - Taste, um schließen Sie die Tastatur und Optional die Schaltflächen Weiter und zurück. Es kümmert sich auch um die Abberufung von der Tastatur, wenn Sie Tippen Sie außerhalb des Textfelds, und in der Größe verändern und scrollen der Ansicht, wenn die Tastatur angezeigt wird oder verschwindet.
Es ist speziell für die Arbeit mit UITableVIew und auch mit UIScrollView.
InformationsquelleAutor der Antwort ncerezo
Können Sie eine UIToolbar Unterklasse nutzen die responder-Kette. Keine Notwendigkeit, ändern Sie Ihre Ansicht-Controller. In Swift 3:
Dann fügen Sie den folgenden, um Ihre
applicationDidFinishLaunching
Sie dies für alle Ihre Tastaturen:InformationsquelleAutor der Antwort Aaron Frary
Für swift 4 diese können Sie verwenden:-
InformationsquelleAutor der Antwort Deepak Kumar