Uso delle barre di spostamento tvOS in Xamarin

Le barre di spostamento possono essere aggiunte all'inizio delle visualizzazioni per visualizzare un titolo e i pulsanti facoltativi della barra di spostamento. In genere vengono usati quando l'utente ha spostato da una pagina principale, ad esempio una visualizzazione tabella, una raccolta o un menu a una visualizzazione secondaria che mostra i dettagli dell'elemento selezionato.

Barra di spostamento di esempio

Oltre al titolo (visualizzato al centro), le barre di spostamento possono contenere uno o più pulsanti barra di spostamento (UIBarButtonItem) sui lati sinistro e destro della barra.

Importante

Le barre di spostamento sono completamente trasparenti per impostazione predefinita. Prestare attenzione a garantire che il contenuto della barra di spostamento rimanga leggibile sul contenuto sottostante. Ad esempio, quando il contenuto in una visualizzazione tabella o una raccolta scorre sotto di esso.

Il modo più semplice per usare le barre di spostamento in un'app Xamarin.tvOS consiste nell'aggiungerli all'interfaccia utente dell'app usando iOS Designer.

  1. Nel riquadro della soluzione fare doppio clic sul Main.storyboard file e aprirlo per la modifica.

  2. Trascinare una barra di spostamento dalla casella degli strumenti e rilasciarla nella visualizzazione nella parte superiore della schermata:

    Barra di spostamento

  3. Fare doppio clic sulla barra di spostamento per selezionare l'elemento di spostamento. Nella scheda Widget del riquadro proprietà è possibile impostare il titolo:

    Impostare il titolo

  4. Successivamente, è possibile aggiungere uno o più elementi pulsante barra alla fine della barra:

    Elemento pulsante barra

  5. Infine, collegare gli elementi pulsante della barra alle azioni nella scheda Eventi di Esplora proprietà:

    Azione elemento pulsante barra

  6. Salva le modifiche.

Importante

Anche se è possibile assegnare eventi come TouchUpInside a un elemento dell'interfaccia utente (ad esempio un uiButton) in iOS Designer, non verrà mai chiamato perché Apple TV non ha un touch screen o supporta gli eventi di tocco. È consigliabile usare sempre l'evento Primary Action quando si creano gestori eventi per gli elementi dell'interfaccia utente tvOS.

Il codice seguente fornisce un esempio di gestori di eventi in tre diversi oggetti BarButtonItems: ShowFirstHotel, ShowSecondHotele ShowThirdHotel. Quando si fa clic su ogni elemento, l'immagine HotelImage di sfondo viene modificata. Questa operazione viene modificata nel file View Controller (esempio ViewController.cs) :

using System;
using Foundation;
using UIKit;

namespace MySingleView
{
    public partial class ViewController : UIViewController
    {
        #region Constructors
        public ViewController (IntPtr handle) : base (handle)
        {
        }
        #endregion

        #region Override Methods
        public override void ViewDidLoad ()
        {
            base.ViewDidLoad ();
            // Perform any additional setup after loading the view, typically from a nib.
        }

        public override void DidReceiveMemoryWarning ()
        {
            base.DidReceiveMemoryWarning ();
            // Release any cached data, images, etc that aren't in use.
        }
        #endregion

        #region Custom Actions
        partial void ShowFirstHotel (UIBarButtonItem sender) {
            // Change background image
            HotelImage.Image = UIImage.FromFile("Motel01.jpg");
        }

        partial void ShowSecondHotel (UIBarButtonItem sender) {
            // Change background image
            HotelImage.Image = UIImage.FromFile("Motel02.jpg");
        }

        partial void ShowThirdHotel (UIBarButtonItem sender) {
            // Change background image
            HotelImage.Image = UIImage.FromFile("Motel03.jpg");
        }
        #endregion
    }
}

Finché la proprietà di Enabled un pulsante è true e non è coperta da un altro controllo o visualizzazione, può essere reso l'elemento attivo con Siri Remote.

Per altre informazioni sull'uso degli storyboard, vedere la guida introduttiva hello, tvOS.

Riepilogo

Questo articolo ha illustrato la progettazione e l'uso delle barre di spostamento all'interno di un'app Xamarin.tvOS.