1

GCController.controllers()アプリの起動時にどのコントローラーが既に AppleTV に接続されているかを知るために、アプリの起動後に配列を読み取ろうとしています。しかし、最初の UIViewController で呼び出されたGCController.controllers().count後、ある時点までは 0です。現在接続されているコントローラーが設定されていることviewDidAppearを確認できる決定的なポイントを知っている人はいますか?GCController.controllers()

コントローラー接続通知に登録する必要があることを認識しています。

NSNotificationCenter.defaultCenter().addObserver(self, selector: "handleControllerDidConnectNotification:"   , name: GCControllerDidConnectNotification   , object: nil)

しかし、それは打ち上げ後のことです。まず、すでに接続されているものを知る必要があります。誰でも知っていますか?

4

2 に答える 2

1

電話startWirelessControllerDiscoveryWithCompletionHandlerして、完成したばかりのゲームアプリで動作するように見えることを確認viewDidLoadできます.GCController.controllers()viewWillAppear

ドキュメント:

アプリの起動が完了すると、オペレーティング システムによって、接続されているコントローラーのリストが自動的に作成されます。controllers クラス メソッドを呼び出して、接続されているすべてのコントローラーの GCController オブジェクトの配列を取得します。次に、これらのオブジェクトを使用してコントローラーを構成するか、コントローラーの入力を読み取ります。コントローラーが接続されていない場合、またはアプリの起動中にこのメソッドを呼び出した場合、配列は空になります

于 2015-11-10T19:43:50.007 に答える