Tôi cần văn bản của trường văn bản được chọn ngay sau khi UIAlertController được trình bày. Tuy nhiên, cách tôi chọn văn bản trong một UITextField tiêu chuẩn không hoạt động ở đây.Chọn văn bản trong trường văn bản của UIAlertController
Đây là những gì tôi đã thử, nhưng tôi dường như không thể làm cho nó hoạt động.
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)
})
Bất kỳ ý tưởng nào?
tôi nhận thấy bạn bỏ qua 'textField.becomeFirstResponder() 'từ @ ridvankucuk của câu trả lời. Có những tình huống mà dòng đó phải được thêm vào lại không? – ToolmakerSteve
@ToolmakerSteve, cá nhân, tôi chưa bao giờ gặp những tình huống như vậy. Trường văn bản đã được trả lời đầu tiên khi phương thức 'textFieldDidBeginEditing:' được gọi. Nhưng có thể bạn có một số trường hợp đặc biệt, khi bạn cần làm cho nó trở lại lần đầu tiên. – seelts