Come posso creare un testo modificabile su più righe UITextview
all'interno di UIAlertController
? UITextfield
supporta una singola riga e dobbiamo creare una casella di testo multilinea nella finestra a comparsa.Testo modificabile in più righe UITextview all'interno di UIAlertController?
risposta
Questo è un bene appraoch ...
func popUpController()
{
let alertController = UIAlertController(title: "\n\n\n\n\n\n", message: nil, preferredStyle: UIAlertControllerStyle.ActionSheet)
let margin:CGFloat = 8.0
let rect = CGRectMake(margin, margin, alertController.view.bounds.size.width - margin * 4.0, 100.0)
let customView = UITextView(frame: rect)
customView.backgroundColor = UIColor.clearColor()
customView.font = UIFont(name: "Helvetica", size: 15)
// customView.backgroundColor = UIColor.greenColor()
alertController.view.addSubview(customView)
let somethingAction = UIAlertAction(title: "Something", style: UIAlertActionStyle.Default, handler: {(alert: UIAlertAction!) in print("something")
print(customView.text)
})
let cancelAction = UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Cancel, handler: {(alert: UIAlertAction!) in print("cancel")})
alertController.addAction(somethingAction)
alertController.addAction(cancelAction)
self.presentViewController(alertController, animated: true, completion:{})
}
Non è possibile creare testo a più righe in UIAlertController
. Devi creare il tuo UIAlertController
per quello.
Grazie Questo è un buon approccio per fare il mio costume, finalmente ho renderlo come di seguito nella mia risposta. Grazie mille dammi un buon collegamento. – Vishal
ho fatto un paio di modifiche per l'approccio di Vishal.
- Aggiunto il metodo UITextViewDelegate per visualizzare un testo grigio chiaro iniziale come segnaposto e rimuoverlo su textViewDidBeginEditing.
Imposta la larghezza del bordo del testo, il colore del bordo e il colore dello sfondo per renderlo visibile.
class ViewController: UIViewController, UITextViewDelegate { ... @IBAction func showAlert(sender: AnyObject) { let alertController = UIAlertController(title: "Hello, I'm alert! \n\n\n\n\n\n\n", message: "", preferredStyle: .Alert) let rect = CGRectMake(15, 50, 240, 150.0) let textView = UITextView(frame: rect) textView.font = UIFont(name: "Helvetica", size: 15) textView.textColor = UIColor.lightGrayColor() textView.backgroundColor = UIColor.whiteColor() textView.layer.borderColor = UIColor.lightGrayColor().CGColor textView.layer.borderWidth = 1.0 textView.text = "Enter message here" textView.delegate = self alertController.view.addSubview(textView) let cancel = UIAlertAction(title: "Cancel", style: .Cancel, handler: nil) let action = UIAlertAction(title: "Ok", style: .Default, handler: { action in let msg = (textView.textColor == UIColor.lightGrayColor()) ? "" : textView.text print(msg) }) alertController.addAction(cancel) alertController.addAction(action) self.presentViewController(alertController, animated: true, completion: {}) } func textViewDidBeginEditing(textView: UITextView) { if textView.textColor == UIColor.lightGrayColor(){ textView.text = "" textView.textColor = UIColor.darkGrayColor() } } }
Grazie mille. È esattamente come volevo. Ma non salta quando viene avviata la modifica. Hai una soluzione per questo. –
- 1. iPhone UITextView scorrevole ma non modificabile
- 2. Testo modificabile in Raphaël
- 3. UIAlertController arrotondato rettangolo di testo
- 4. Console.ReadLine ("Testo modificabile testo predefinito in linea")
- 5. Campo di testo non modificabile
- 6. Casella di testo non modificabile in wxPython
- 7. UITextField in UIAlertController (border, backgroundColor)
- 8. UITextView Paging abilitato Testo interrotto
- 9. Seleziona testo nel campo di testo di UIAlertController
- 10. Grab testo selezionato UITextView
- 11. Come trovare UITextView numero di righe
- 12. Ridimensiona testo su misura su UITextView
- 13. Più righe di testo in UILabel in iOS 9
- 14. conversione più righe di testo in una cornice di dati
- 15. come inserire UIImage in UITextView
- 16. Aggiungere un'etichetta in UIAlertController?
- 17. Come si deseleziona il testo in UITextView?
- 18. Come leggere il numero di righe in UITextView
- 19. Più righe di testo in una singola mappa
- 20. Come posso inserire più righe di testo in un NSMenuItem?
- 21. Testo del pulsante non con più righe
- 22. Datagrid modificabile in WPF
- 23. Problema di più righe di testo di Microsoft CRM
- 24. Come aumentare la spaziatura tra le righe in UITextView
- 25. Contenuto HTML div modificabile: selezionare evento testo
- 26. Come rendere UITextView non modificabile e non si desidera mostrare la tastiera
- 27. Excel: cella con più righe di testo in una riga di testo
- 28. Applicare formato RTF sul testo selezionato di UITextView in iOS
- 29. UIAlertController larghezza del campo di testo è molto più piccola del solito
- 30. espressione regolare su più righe con riquadro di testo
Ho fatto qualche ricerca su questo. Sembra che l'implementazione interna di UIAlertController sia cambiata (sto lavorando su IOS9) e questo non funzionerà. Solo FYI. –