Teilen über


Arbeiten mit tvOS-Navigationsleisten in Xamarin

Navigationsleisten können am oberen Rand der Ansichten hinzugefügt werden, um einen Titel und optionale Navigationsleistenschaltflächen anzuzeigen. In der Regel werden sie verwendet, wenn der Benutzer von einer Standard-Seite aus navigiert hat, z. B. eine Tabellenansicht, eine Sammlung oder ein Menü zu einer Unteransicht mit den Details des ausgewählten Elements.

Beispielnavigationsleiste

Zusätzlich zum Titel (der in der Mitte angezeigt wird), können Navigationsleisten eine oder mehrere Navigationsleistenschaltflächen (UIBarButtonItem) auf der linken und rechten Seite der Leiste enthalten.

Wichtig

Navigationsleisten sind standardmäßig völlig transparent. Achten Sie darauf, dass der Inhalt der Navigationsleiste über dem darunter liegenden Inhalt lesbar bleibt. Wenn z. B. Inhalte in einer Tabellenansicht oder -auflistung darin scrollen.

Die einfachste Möglichkeit zum Arbeiten mit Navigationsleisten in einer Xamarin.tvOS-App besteht darin, sie mithilfe des iOS-Designers zur Benutzeroberfläche der App hinzuzufügen.

  1. Doppelklicken Sie auf dem Lösungspad auf Main.storyboard die Datei, und öffnen Sie sie zur Bearbeitung.

  2. Ziehen Sie eine Navigationsleiste aus der Toolbox , und legen Sie sie auf der Ansicht am oberen Rand des Bildschirms ab:

    Navigationsleiste

  3. Doppelklicken Sie auf die Navigationsleiste , um das Navigationselement auszuwählen. Auf der Registerkarte "Widget" des Eigenschaftenpads können Sie den Titel festlegen:

    Festlegen des Titels

  4. Als Nächstes können Sie ein oder mehrere Balkenschaltflächenelemente am Ende der Leiste hinzufügen:

    Element einer Leistenschaltfläche

  5. Verbinden Sie schließlich die Schaltflächenelemente der Leiste mit Aktionen auf der Registerkarte "Ereignisse" des Eigenschaften-Explorers:

    Aktion

  6. Speichern Sie die Änderungen.

Wichtig

Es ist zwar möglich, Ereignisse wie z TouchUpInside . B. einem UI-Element (z. B. einem UIButton)-Element im iOS-Designer zuzuweisen, es wird jedoch nie aufgerufen, da Apple TV über keinen Touchscreen verfügt oder Touchereignisse unterstützt. Sie sollten das Primary Action Ereignis immer verwenden, wenn Sie Ereignishandler für tvOS-Benutzeroberflächenelemente erstellen.

Der folgende Code zeigt ein Beispiel für Ereignishandler für drei verschiedene BarButtonItems: ShowFirstHotel, , ShowSecondHotelund ShowThirdHotel. Wenn auf jedes Element geklickt wird, wird das Hintergrundbild HotelImage geändert. Dies wird in der Ansichtscontrollerdatei (Beispiel ViewController.cs) bearbeitet:

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
    }
}

Solange die Enabled Eigenschaft einer Schaltfläche nicht von einem anderen Steuerelement oder einer anderen Ansicht abgedeckt wird true , kann es mithilfe der Siri Remote zum Fokuselement gemacht werden.

Weitere Informationen zum Arbeiten mit Storyboards finden Sie in unserem Schnellstarthandbuch für Hello, tvOS.

Zusammenfassung

Dieser Artikel befasst sich mit dem Entwerfen und Arbeiten mit Navigationsleisten innerhalb einer Xamarin.tvOS-App.