Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In iOS la UIButton classe rappresenta un controllo pulsante.
Le proprietà di un pulsante possono essere modificate a livello di codice o con Interface Builder di Xcode.
Creazione di un pulsante a livello di codice
È possibile creare un oggetto UIButton con poche righe di codice.
Creare un'istanza di un pulsante e specificarne il tipo:
UIButton myButton = new UIButton(UIButtonType.System);Il tipo del pulsante viene specificato da una
UIButtonTypeproprietà:UIButtonType.System- Pulsante per utilizzo genericoUIButtonType.DetailDisclosure- Indica la disponibilità di informazioni dettagliate, in genere relative a un elemento specifico in una tabellaUIButtonType.InfoDark- Indica la disponibilità delle informazioni di configurazione; colore scuroUIButtonType.InfoLight- Indica la disponibilità delle informazioni di configurazione; colore chiaroUIButtonType..AddContact- Indica che è possibile aggiungere un contattoUIButtonType.Custom- Pulsante personalizzabile
Per altre informazioni sui diversi tipi di pulsante, vedere:
- Sezione Tipi di pulsante personalizzati di questo documento
- Ricetta dei tipi di pulsante
- Linee guida per l'interfaccia umana iOS di Apple.
Definire le dimensioni e la posizione del pulsante:
myButton.Frame = new CGRect(25, 25, 300, 150);Impostare il testo del pulsante. Usare il metodo , che richiede il
SetTitletesto e unUIControlStatevalore per lo stato del pulsante:myButton.SetTitle("Hello, World!", UIControlState.Normal);I tipi di stato del pulsante sono elencati di seguito:
UIControlState.NormalUIControlState.HighlightedUIControlState.DisabledUIControlState.SelectedUIControlState.FocusedUIControlState.ApplicationUIControlState.Reserved
Per altre informazioni sullo stile di un pulsante e sull'impostazione del testo, vedere:
- Sezione Applicazione di stili a un pulsante di questo documento
- Ricetta del testo del pulsante Imposta.
Gestione di un tocco di pulsante
Per rispondere a un tocco di pulsante, fornire un gestore per l'evento del TouchUpInside pulsante:
myButton.TouchUpInside += (sender, e) => {
DoSomething();
};
Nota
TouchUpInside non è l'unico evento pulsante disponibile. UIButton è una classe figlio di UIControl, che definisce molti eventi diversi.
Applicazione di stili a un pulsante
UIButtonI controlli possono esistere in diversi stati, ognuno specificato da un UIControlState valore , Normal, DisabledFocused, , Highlightede così via. A ogni stato può essere assegnato uno stile univoco, specificato a livello di codice o con progettazione iOS.
Nota
Per un elenco completo di tutti i UIControlState valori, vedere UIKit.UIControlState enumeration Documentazione.
Ad esempio, per impostare il colore del titolo e il colore dell'ombreggiatura per UIControlState.Normal:
myButton.SetTitleColor(UIColor.White, UIControlState.Normal);
myButton.SetTitleShadowColor(UIColor.Black, UIControlState.Normal);
Il codice seguente imposta il titolo del pulsante su una stringa con attributi (stilizzata) per UIControlState.Normal e UIControlState.Highlighted:
var normalAttributedTitle = new NSAttributedString(buttonTitle, foregroundColor: UIColor.Blue, strikethroughStyle: NSUnderlineStyle.Single);
myButton.SetAttributedTitle(normalAttributedTitle, UIControlState.Normal);
var highlightedAttributedTitle = new NSAttributedString(buttonTitle, foregroundColor: UIColor.Green, strikethroughStyle: NSUnderlineStyle.Thick);
myButton.SetAttributedTitle(highlightedAttributedTitle, UIControlState.Highlighted);
Tipi di pulsanti personalizzati
I pulsanti con un UIButtonType di Custom non hanno stili predefiniti. Tuttavia, è possibile configurare l'aspetto del pulsante impostando un'immagine per i diversi stati:
myButton.SetImage (UIImage.FromBundle ("Buttons/MagicWand.png"), UIControlState.Normal);
myButton.SetImage (UIImage.FromBundle ("Buttons/MagicWand_Highlight.png"), UIControlState.Highlighted);
myButton.SetImage (UIImage.FromBundle ("Buttons/MagicWand_On.png"), UIControlState.Selected);
A seconda che l'utente stia toccando o meno il pulsante, verrà eseguito il rendering come una delle immagini seguenti (UIControlState.NormalUIControlState.Highlightedrispettivamente e UIControlState.Selected stati):



Per altre informazioni sull'uso dei pulsanti personalizzati, vedere usare un'immagine per la ricetta di un pulsante .