Ich brauche den Text des Textfelds, das direkt nach der Darstellung des UIAlertControllers ausgewählt werden soll. Die Art und Weise, wie ich Text in einem Standard-UITextField auswähle, funktioniert hier jedoch nicht.Text im UIAlertController-Textfeld auswählen
Dies ist, was ich versucht habe, aber ich kann es nicht funktionieren scheinen.
let ac = UIAlertController(title: "Rename", message: nil, preferredStyle: .Alert)
ac.addTextFieldWithConfigurationHandler({
[] (textField: UITextField) in
textField.selectedTextRange = textField.textRangeFromPosition(textField.beginningOfDocument, toPosition: textField.endOfDocument)
textField.text = "filename.dat"
})
ac.addAction(UIAlertAction(title: "CANCEL", style: .Cancel, handler: nil))
ac.addAction(UIAlertAction(title: "OK", style: .Default, handler: {
[] Void in
// do something
}))
dispatch_async(dispatch_get_main_queue(), {
self.presentViewController(ac, animated: true, completion: nil)
})
Irgendwelche Ideen?
Ich bemerke man ausgelassen 'textField.becomeFirstResponder()' aus @ Ridvankucuks Antwort. Gibt es Situationen, in denen diese Linie wieder hinzugefügt werden sollte? – ToolmakerSteve
@ToolmakerSteve, persönlich habe ich solche Situationen nie erlebt. Textfeld ist bereits erste Antwort, wenn 'textFieldDidBeginEditing:' Methode aufgerufen wird. Aber möglicherweise haben Sie einen speziellen Fall, wenn Sie es wieder Ersthelfer machen müssen. – seelts