メニュー選択が OpenGL で行われると、次のコードを実行する EAGLView ベースのクラスがあります。
-(void) startPicker
{
self.gameState = kStatePicker;
GKPeerPickerController *picker = [[GKPeerPickerController alloc] init];
picker.delegate = self;
picker.connectionTypesMask = GKPeerPickerConnectionTypeNearby;
[picker show];
}
なんらかの理由で、ピッカーが表示されると、空白の丸みを帯びた四角形になり、インターフェイスや指示が表示されません。
init 関数の最後に起動すると、機能します。その後、メニューから正常に起動します。メイン キュー ディスパッチ内の startPicker にコードを配置しようとしましたが、役に立たないようです。ARC を使用する場合と使用しない場合でピッカーを実行してみましたが、違いはありません。このコードは、GameKit の bluetooth フレームワークを紹介するために、Apple が少し前に提供した GKTank の例から多かれ少なかれ直接取られています。
なぜこれが起こっているのか、そして可能な解決策は何ですか?