首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tvOS GameController在发布后,GCController.controllers在什么情况下会被填充?

tvOS GameController在发布后,GCController.controllers在什么情况下会被填充?
EN

Stack Overflow用户
提问于 2015-11-08 20:30:00
回答 2查看 586关注 0票数 1

我正在尝试在我的应用程序启动后读取GCController.controllers()数组,以了解哪些控制器在应用程序启动时已经连接到AppleTV。但是GCController.controllers().count是0,直到在我的初始UIViewController上调用viewDidAppear之后的某个时刻。有没有人知道您可以检查GCController.controllers()以了解它是否已安装了当前连接的控制器的确定点?

我知道需要向注册控制器连接通知;

代码语言:javascript
复制
NSNotificationCenter.defaultCenter().addObserver(self, selector: "handleControllerDidConnectNotification:"   , name: GCControllerDidConnectNotification   , object: nil)

但这是在发布后的晚些时候。首先,我需要知道哪些已经连接。有人知道吗?

EN

回答 2

Stack Overflow用户

发布于 2015-11-11 03:43:50

你可以在viewDidLoad上调用startWirelessControllerDiscoveryWithCompletionHandler,然后在viewWillAppear上检查GCController.controllers(),这似乎适用于我刚刚完成的游戏应用程序。

文档:

在应用程序完成启动后,操作系统会自动创建已连接控制器的列表。调用控制器类方法以检索所有连接的控制器的GCController对象数组。接下来,使用这些对象配置控制器或读取控制器的输入。如果没有连接的控制器或在应用程序启动时调用此方法的,则数组将为空

票数 1
EN

Stack Overflow用户

发布于 2015-11-11 06:38:33

GCController将为每个控制器生成GCControllerDidConnectNotification通知,包括那些在启动之前连接到设备的控制器。如果您没有收到已连接控制器的通知,请确认以下事项:

  • 仔细检查它是否已配对并打开
  • ,确保它是MFi控制器。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33593953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档