Share via


Input di testo in Xamarin.iOS

L'accettazione dell'input di testo utente viene eseguita con per UITextField gli input a riga singola e UITextView per il testo modificabile su più righe. È possibile trascinare uno di questi controlli in una schermata e fare doppio clic per impostare il testo iniziale.

Gli screenshot seguenti mostrano le icone per questi controlli, che si trovano nel riquadro della casella degli strumenti in Visual Studio per Mac:

UITextField

UITextView

Dopo aver denominato l'outlet e salvato il file Storyboard, Visual Studio per Mac aggiornerà la .designer.cs classe parziale ed è possibile aggiungere codice C# che fa riferimento al controllo al file di classe. Ogni controllo ha proprietà ed eventi univoci a cui è possibile accedere nel codice C#.

UITextField

Il UITextField controllo viene spesso usato per accettare una singola riga di input di testo, ad esempio un nome utente o una password. Ecco alcune delle opzioni disponibili per la personalizzazione del controllo:

Proprietà UITextField

Questi controlli sono illustrati di seguito:

  • Segnaposto : opzione facoltativa. Se impostato, viene visualizzato quando il campo di testo è vuoto, in genere per spiegare all'utente l'input previsto.
  • Cancella pulsante : controlla quando il pulsante di cancellazione standard (il cerchio grigio con (X)) viene visualizzato nel campo di testo, come modo per consentire all'utente di cancellare rapidamente il testo. Può essere nascosta in modo permanente, visibile in modo permanente o visualizzato, a seconda che il campo venga modificato o meno.
  • Min Font Size and Adjust to Fit :consente di regolare automaticamente le dimensioni del carattere per adattarsi automaticamente al testo più lungo e impedire il troncamento, ma limitato a dimensioni non inferiori a quelle specificate.
  • Maiuscola: indica se inserire automaticamente maiuscole, frasi o tutti gli input.
  • Correzione: indica se il controllo ortografico e i suggerimenti sono abilitati.
  • Tastiera : controlla lo stile della tastiera visualizzato per l'input e quindi quali tasti sono disponibili sulla tastiera. Sono inclusi il riquadro numerico, Telefono pad, l'indirizzo di posta elettronica, l'URL e altre opzioni.
  • Aspetto : controlla lo stile di aspetto della tastiera e sarà scuro o chiaro.
  • Chiave restituita: modificare l'etichetta nella chiave Restituita per riflettere meglio l'azione che verrà eseguita. I valori supportati includono Go, Join, Next, Route, Done e Search.
  • Secure : identifica se l'input è mascherato, ad esempio per un input password.

Se un oggetto UITextField chiamato textfield1 è stato aggiunto a una schermata con la finestra di progettazione, è possibile impostare o modificare le relative proprietà in C# come indicato di seguito:

textfield1.Placeholder = "type email here...";
textfield1.KeyboardType = UIKeyboardType.EmailAddress;
textfield1.ReturnKeyType = UIReturnKeyType.Send;
textfield1.MinimumFontSize = 17f;
textfield1.AdjustsFontSizeToFitWidth = true;

Xamarin.iOS fornisce enumerazioni dove appropriato per semplificare la selezione delle impostazioni desiderate, ad esempio UIKeyboardType e UIReturnKeyType nel frammento di codice precedente.

Visualizzare testo a livello di codice

Se non vuoi progettare la schermata con la finestra di progettazione o se vuoi aggiungere dinamicamente del testo in fase di esecuzione, puoi creare e visualizzare un oggetto UITextField a livello di codice nel ViewDidLoad metodo di un controller di visualizzazione simile al seguente:

var frame = new CGRect(10, 10, 300, 40);
textfield1 = new UITextField(frame);
View.Add(textfield1);

UITextView

Il UITextView controllo può essere utilizzato per visualizzare testo di sola lettura o per accettare input di testo a più righe. Ha molte delle stesse opzioni UITextField di (ad esempio maiuscole, correzioni e così via).

Proprietà UITextView

Le proprietà specifiche includono:

  • Comportamento : indica se il testo è modificabile o di sola lettura.
  • Rilevamento: rileva e converte i dati immessi in elementi selezionabili, ad esempio numeri di telefono che possono attivare una chiamata, indirizzi che diventano collegamenti a Mappe, URL aperti in Safari o date e ore che diventano eventi nel calendario.

Se un oggetto UITextView è stato aggiunto a una schermata con la finestra di progettazione, è possibile impostare o modificare le relative proprietà come segue:

textview1.Text = "Lorem ipsum..."; // lots of text can go here
textview1.Editable = true;
textview1.DataDetectorTypes = UIDataDetectorType.PhoneNumber | UIDataDetectorType.Link;