我有一个基于EAGLView的类,它在OpenGL中选择菜单时运行以下代码:
-(void) startPicker
{
self.gameState = kStatePicker;
GKPeerPickerController *picker = [[GKPeerPickerController alloc] init];
picker.delegate = self;
picker.connectionTypesMask = GKPeerPickerConnectionTypeNearby;
[picker show];
}由于某些未知的原因,当拾取器出现时,它是一个空白圆角矩形,没有可见的界面或方向。
如果我在init函数的末尾启动它,它就会工作。之后,它将从菜单中正常启动。我曾尝试将startPicker中的代码放在主队列分派中,但似乎没有什么帮助。我试过用ARC和不用ARC来运行选择器,但这没有什么区别。这段代码或多或少直接取自苹果公司不久前提供的GKTank示例,用于介绍GameKit的蓝牙框架。
谁能告诉我为什么会发生这种情况,以及可能的解决方案是什么?
发布于 2013-05-19 00:40:27
只是跟进一下。我发现在包含此视图的视图控制器中,有一个对UIView setAnimations:NO的调用;这会阻止GKPeerPickerController正确显示。
https://stackoverflow.com/questions/16474987
复制相似问题