iOS Sender UI をカスタマイズする

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

キャスト ウィジェットは、色の設定、ボタン、テキスト、サムネイルの外観、表示するボタンの種類を選択してカスタマイズできます。

ウィジェットのテーマをカスタマイズする

キャスト フレームワーク ウィジェットは、UIKit の Apple UIAppearance プロトコルをサポートしており、ボタンの位置や枠線など、アプリ全体のウィジェットの外観を変更できます。このプロトコルを使用して、既存のアプリのスタイルに合わせて Cast フレームワーク ウィジェットのスタイルを設定します。

キャストボタンの例

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

ウィジェットを直接カスタマイズする

スーパークラスのプロパティを使用して、ウィジェットを直接カスタマイズします。たとえば、GCKUICastButton の色は tintColor: プロパティを使ってカスタマイズするのが一般的です。

キャストボタンの例

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

コントローラ ボタンを選択する

拡張コントローラ クラス(GCKUIExpandedMediaControlsViewController)とミニ コントローラ クラス(GCKUIMiniMediaControlsViewController)の両方にボタンバーがあり、クライアントはこれらのバーに表示されるボタンを構成できます。これは、GCKUIMediaButtonBarProtocol に準拠する両方のクラスによって実現されます。

ミニ コントローラ バーには、ボタン用に次の 3 つの設定可能なスロットがあります。

SLOT  SLOT  SLOT
  1     2     3

拡張コントローラバーには、バーの中央に再生/一時停止切り替えの永続的なボタンがあり、設定可能なスロットが 4 つあります。

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

アプリは、GCKCastContext-[defaultExpandedMediaControlsViewController] プロパティを使用して拡張コントローラへの参照を取得し、-[createMiniMediaControlsViewController] を使用してミニ コントローラを作成できます。

各スロットには、フレームワーク ボタン、カスタムボタン、または空を含めることができます。フレームワーク コントロール ボタンのリストは、次のように定義されます。

ボタンのタイプ 説明
GCKUIMediaButtonTypeNone このスロットにボタンを配置しないでください
GCKUIMediaButtonTypeCustom カスタムボタン
GCKUIMediaButtonTypePlayPauseToggle 再生と一時停止を切り替えます
GCKUIMediaButtonTypeSkipPrevious キュー内の前のアイテムにスキップ
GCKUIMediaButtonTypeSkipNext キュー内の次の項目にスキップします
GCKUIMediaButtonTypeRewind30Seconds 再生を 30 秒巻き戻します
GCKUIMediaButtonTypeForward30Seconds 再生を 30 秒早送りします
GCKUIMediaButtonTypeMuteToggle リモートのウェブ レシーバーのミュートとミュート解除
GCKUIMediaButtonTypeClosedCaptions テキスト トラックと音声トラックを選択するダイアログを開きます

各ボタンの機能の詳細については、GCKUIMediaButtonBarProtocol.h をご覧ください。

GCKUIMediaButtonBarProtocol のメソッドを使用して、次のようにボタンを追加します。

  • バーにフレームワーク ボタンを追加するには、-[setButtonType:atIndex:] の呼び出しのみを行います。

  • バーにカスタムボタンを追加するには、アプリで buttonTypeGCKUIMediaButtonTypeCustom に設定して -[setButtonType:atIndex:] を呼び出し、同じインデックスで UIButton を渡して -[setCustomButton:atIndex:] を呼び出す必要があります。

iOS アプリにカスタム スタイルを適用する

Cast iOS SDK を使用すると、iOS の送信側のデフォルト ウィジェットの UI 要素のフォント、色、画像のスタイルを設定でき、アプリの他の部分に合わせたデザインにすることができます。

次のセクションでは、キャスト ウィジェットまたはウィジェットのグループにカスタム スタイルを適用する方法について説明します。

ウィジェットの UI 要素にスタイルを適用する

この手順では、アプリのミニ コントローラの本文テキストの色を赤に設定する例を使用します。

  1. ビューとスタイルの表で、スタイルを設定するウィジェットまたはウィジェットのグループのビュー名を探します。グループ名には ▼ が付いています。

    例: miniController ウィジェット ビュー

  2. 次の表に示す対応するスタイルクラスのプロパティのリストから、変更する属性の名前を見つけます。

    例: bodyTextColorGCKUIStyleAttributesMiniController クラスのプロパティです。

  3. コードを記述します。

    例:

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];

このパターンは、ウィジェットの UI 要素にあらゆるスタイルを適用する場合に使用します。

ビューとスタイルの表

次の表に、スタイルを適用できる 7 つのウィジェット ビューと 3 つのグループ(▼ とマーク)を示します。

ビュー名 タイプ スタイルクラス
castViews グループ GCKUIStyleAttributesCastViews
deviceControl グループ GCKUIStyleAttributesDeviceControl
deviceChooser ウィジェット GCKUIStyleAttributesDeviceChooser
noDevicesAvailableController ウィジェット GCKUIStyleAttributesNoDevicesAvailableController
connectionController グループ GCKUIStyleAttributesConnectionController
navigation ウィジェット GCKUIStyleAttributesConnectionNavigation
toolbar ウィジェット GCKUIStyleAttributesConnectionToolbar
guestModePairingDialog ウィジェット GCKUIStyleAttributesGuestModePairingDialog
mediaControl グループ GCKUIStyleAttributesMediaControl
miniController ウィジェット GCKUIStyleAttributesMiniController
expandedController ウィジェット GCKUIStyleAttributesExpandedController
trackSelector ウィジェット GCKUIStyleAttributesTrackSelector
instructions ウィジェット GCKUIStyleAttributesInstructions

スタイル階層

GCKUIStyle シングルトンは、すべてのスタイル設定の API エントリ ポイントです。下記のように、スタイル階層のルートであるプロパティ castViews があります。この図は、前のに示されているのと同じビューとグループを表示する別の方法です。

スタイルは、個々のウィジェットまたはウィジェットのグループに適用できます。スタイル階層には、castViews、deviceControl、mediaControl の 3 つのウィジェット グループがあります。各グループの長方形がウィジェットを囲みます。 スタイルをグループに適用すると、そのグループ内のすべてのウィジェットにスタイルが適用されます。

たとえば、castViews グループを使用するとすべてのウィジェットにスタイルを適用でき、deviceControl グループを使用すると、その 3 つのデバイス コントロール ウィジェットにのみスタイルを適用できます。instructions ウィジェットはどのグループにも属していません。

castViews
deviceControl mediaControl
手順

デバイス
選択ツール
noDevicesAvailable 画面
接続
コントローラ
ミニ
コントローラ
拡張
コントローラ
トラック
セレクタ
guestMode
PairingDialog
ナビゲーション / ツールバー

注: この図のウィジェット名は、2 行で表示される場合、1 語、1 行、スペースなしで記述する必要があります。たとえば、device ChooserdeviceChooser と記述します。画像をロールアップすると拡大されます。