iOS-Benutzeroberfläche für Absender anpassen

Sie können Streaming-Widgets anpassen, indem Sie die Farben, den Stil der Schaltflächen, den Text und die Darstellung von Miniaturansichten festlegen und die Schaltflächentypen auswählen, die angezeigt werden sollen.

Widget-Design anpassen

Die Cast-Framework-Widgets unterstützen das Apple UIAppearance Protocol in UIKit, um die Darstellung der Widgets in Ihrer App zu ändern, z. B. die Position oder den Rahmen einer Schaltfläche. Verwenden Sie dieses Protokoll, um die Cast-Framework-Widgets so zu gestalten, dass sie einem vorhandenen App-Stil entsprechen.

Beispiel für das Cast-Symbol

Swift
GCKUICastButton.appearance().tintColor = UIColor.gray
Objective C
[GCKUICastButton appearance].tintColor = [UIColor grayColor];

Widget direkt anpassen

Sie können ein Widget direkt mithilfe der Eigenschaften seiner übergeordneten Klasse anpassen. Beispielsweise wird die Farbe GCKUICastButton häufig mit dem Attribut tintColor: angepasst.

Beispiel für das Cast-Symbol

Swift
castButton.tintColor = UIColor.gray
Objective C
castButton.tintColor = [UIColor grayColor];

Tasten auswählen

Sowohl die erweiterte Controller-Klasse (GCKUIExpandedMediaControlsViewController) als auch die Mini-Controller-Klasse (GCKUIMiniMediaControlsViewController) enthalten eine Schaltflächenleiste und Clients können konfigurieren, welche Schaltflächen auf diesen Balken zu sehen sind. Das wird durch beide Klassen erreicht, die GCKUIMediaButtonBarProtocol entsprechen.

Die Mini-Controllerleiste hat drei konfigurierbare Tasten:

SLOT  SLOT  SLOT
  1     2     3

Die maximierte Controllerleiste hat eine dauerhafte Ein-/Aus-Schaltfläche für Wiedergabe/Pause in der Mitte der Leiste sowie 4 konfigurierbare Slots:

SLOT  SLOT  PLAY/PAUSE  SLOT  SLOT
  1     2     BUTTON      3     4

Die App kann einen Verweis auf den erweiterten Controller mit der -[defaultExpandedMediaControlsViewController]-Eigenschaft von GCKCastContext abrufen und mit -[createMiniMediaControlsViewController] einen Mini-Controller erstellen.

Jeder Slot kann entweder eine Framework-Schaltfläche oder eine benutzerdefinierte Schaltfläche enthalten oder leer sein. Die Liste der Framework-Steuerschaltflächen ist wie folgt definiert:

Schaltflächenart Beschreibung
GCKUIMediaButtonTypeNone Keine Taste in diesem Steckplatz platzieren
GCKUIMediaButtonTypeCustom Benutzerdefinierte Schaltfläche
GCKUIMediaButtonTypePlayPauseToggle Zwischen Wiedergabe und Pause wechseln
GCKUIMediaButtonTypeSkipPrevious Wechselt zum vorherigen Element in der Warteschlange
GCKUIMediaButtonTypeSkipNext Springt zum nächsten Element in der Warteschlange
GCKUIMediaButtonTypeRewind30Seconds Spult die Wiedergabe um 30 Sekunden zurück
GCKUIMediaButtonTypeForward30Seconds Wiedergabe 30 Sekunden vorspulen
GCKUIMediaButtonTypeMuteToggle Schaltet den Remote-Web-Receiver stumm und hebt die Stummschaltung auf
GCKUIMediaButtonTypeClosedCaptions Öffnet ein Dialogfeld zum Auswählen von Text- und Audiotracks

Eine ausführliche Beschreibung der Funktion der einzelnen Schaltflächen finden Sie unter GCKUIMediaButtonBarProtocol.h.

Fügen Sie mit den Methoden der GCKUIMediaButtonBarProtocol so eine Schaltfläche hinzu:

  • Zum Hinzufügen einer Framework-Schaltfläche zu einer Leiste ist nur ein Aufruf von -[setButtonType:atIndex:] erforderlich.

  • Wenn Sie einer Leiste eine benutzerdefinierte Schaltfläche hinzufügen möchten, muss Ihre App -[setButtonType:atIndex:] aufrufen, wobei buttonType auf GCKUIMediaButtonTypeCustom festgelegt ist. Anschließend muss -[setCustomButton:atIndex:] aufgerufen werden, wobei UIButton mit demselben Index übergeben wird.

Benutzerdefinierte Stile auf iOS-Apps anwenden

Mit dem Cast iOS SDK können Sie die Schriftart, Farbe und Bilder von UI-Elementen der Standard-Widgets Ihres iOS-Senders gestalten, um die Ansichten so zu gestalten, dass sie zum Rest Ihrer App passen.

Im folgenden Abschnitt erfahren Sie, wie Sie benutzerdefinierte Stile auf Cast-Widgets oder Widgetgruppen anwenden.

Stil auf ein UI-Element eines Widgets anwenden

In diesem Verfahren wird als Beispiel die Textfarbe des Mini-Controllers Ihrer App auf Rot festgelegt.

  1. Suchen Sie in der Tabelle mit Ansichten und Stilen nach dem Ansichtsnamen des Widgets oder einer Gruppe von Widgets, das Sie gestalten möchten. Gruppennamen sind mit ▼ markiert.

    Beispiel: miniController-Widget-Ansicht

  2. Suchen Sie in der Liste der Attribute in der entsprechenden Stilklasse in dieser Tabelle nach den Namen der Attribute, die Sie ändern möchten.

    Beispiel: bodyTextColor ist ein Attribut der Klasse GCKUIStyleAttributesMiniController.

  3. Schreiben Sie den Code.

    Beispiel:

Swift
// Get the shared instance of GCKUIStyle
let castStyle = GCKUIStyle.sharedInstance()
// Set the property of the desired cast widget.
castStyle.castViews.mediaControl.miniController.bodyTextColor = UIColor.red
// Refresh all currently visible views with the assigned styles.
castStyle.apply()
Objective C
// Get the shared instance of GCKUIStyle.
GCKUIStyle *castStyle = [GCKUIStyle sharedInstance];
// Set the property of the desired cast widget.
castStyle.castViews.mediaControl.miniController.bodyTextColor = [UIColor redColor];
// Refresh all currently visible views with the assigned styles.
[castStyle applyStyle];

Verwenden Sie dieses Muster, um einen beliebigen Stil auf jedes UI-Element eines beliebigen Widgets anzuwenden.

Tabelle mit Ansichten und Stilen

Diese Tabelle zeigt die sieben Widget-Ansichten und drei Gruppen (mit ▼ gekennzeichnet), auf die Sie Stile anwenden können.

Ansichtsname Typ Stilklasse
castViews Gruppe GCKUIStyleAttributesCastViews
deviceControl Gruppe GCKUIStyleAttributesDeviceControl
deviceChooser Widget GCKUIStyleAttributesDeviceChooser
noDevicesAvailableController Widget GCKUIStyleAttributesNoDevicesAvailableController
connectionController Gruppe GCKUIStyleAttributesConnectionController
navigation Widget GCKUIStyleAttributesConnectionNavigation
toolbar Widget GCKUIStyleAttributesConnectionToolbar
mediaControl Gruppe GCKUIStyleAttributesMediaControl
miniController Widget GCKUIStyleAttributesMiniController
expandedController Widget GCKUIStyleAttributesExpandedController
trackSelector Widget GCKUIStyleAttributesTrackSelector
instructions Widget GCKUIStyleAttributesInstructions

Stilhierarchie

Das Singleton-Element GCKUIStyle ist der API-Einstiegspunkt für alle Stileinstellungen. Sie hat die Eigenschaft castViews, die den Stamm der Stilhierarchie darstellt, wie unten dargestellt. Dieses Diagramm bietet eine andere Möglichkeit, dieselben Ansichten und Gruppen aus der vorherigen Tabelle zu betrachten.

Sie können einen Stil auf ein einzelnes Widget oder auf eine Gruppe von Widgets anwenden. Die Stilhierarchie besteht aus drei Widget-Gruppen: CastViews, deviceControl und mediaControl. Das Rechteck jeder Gruppe umschließt die zugehörigen Widgets. Wenn Sie einen Stil auf eine Gruppe anwenden, wird er auf alle Widgets in dieser Gruppe angewendet.

Mit der Gruppe castViews können Sie beispielsweise einen Stil auf alle Widgets anwenden, mit der Gruppe deviceControl hingegen nur auf die drei Gerätesteuerungs-Widgets. Das instructions-Widget gehört zu keiner Gruppe.

castViews
deviceControl mediaControl
Anleitung

Gerät
Auswahl
Bildschirm nodevicesAvailable (nicht verfügbar)
connection
Controller
mini
Controller
maximiert
Controller
track
Selektor
Navigation / Symbolleiste

Fußnote: Widget-Namen in diesem Diagramm, die in zwei Zeilen dargestellt werden, sollten im Code als ein Wort auf einer Zeile ohne Leerzeichen geschrieben werden. Beispiel: device Chooser sollte deviceChooser geschrieben werden. Bewegen Sie die Maus über Bilder, um sie zu vergrößern.