5

默认情况下,游戏控制器按钮B会退出应用程序并导航回 tvOS 主屏幕。起初我认为这很直观,但很快意识到这就是 Nimbus MENU 按钮(控制器的死角)的用途,并且我实际上想B在游戏中使用按钮。

为按钮设置更改处理程序B有效,但释放按钮时应用程序仍会退出。

GCControllerButtonValueChangedHandler buttonBHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) {
        NSLog(@"B");
};
4

2 回答 2

5

我遇到过同样的问题。

解决方案是让我的主 ViewController 从 GCEventViewController 而不是 UIViewController 继承。

默认情况下,使用 GCEventViewController 时,MENU 按钮不会返回菜单。在这种情况下,如果您希望它能够以原始行为返回菜单,您只需将 controllerUserInteractionEnabled 设置为 YES。

在此处查看此类的文档: https ://developer.apple.com/library/tvos/documentation/GameController/Reference/GCEventViewController_Ref/index.html

编辑:苹果开发论坛帮我解决这个问题:https ://forums.developer.apple.com/message/57926#57926

希望这可以帮助,

于 2015-11-27T14:27:10.917 回答
0

我也遇到了与 Unity 相关的问题,但我认为这个相当老套的解决方案会有所帮助。

从 GCEventViewController 派生可以覆盖多个方法,其中之一是:

- (void)pressesBegan:(NSSet<UIPress *> *)presses withEvent:(UIPressesEvent *)event

在不调用 super 的情况下返回或处理印刷机会删除对内部的所有调用。

于 2016-06-22T18:15:00.710 回答