UIAlertControllerが提示された直後に、テキストフィールドのテキストを選択する必要があります。しかし、標準のUITextFieldでテキストを選択する方法はここでは機能しません。UIAlertControllerのテキストフィールドでテキストを選択
これは私が試したものですが、動作させることができません。
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)
})
私はあなたが( 'textField.becomeFirstResponderを省略気づく)'から@ ridvankucukの答え。その行を追加する必要がある状況はありますか? – ToolmakerSteve
@ToolmakerSteve、個人的には、私はそのような状況で一度も会ったことがありません。 'textFieldDidBeginEditing:'メソッドが呼び出されると、テキストフィールドは既に最初のレスポンダです。しかし、最初のレスポンダーにする必要があるときに、特別なケースがあるかもしれません。 – seelts