EAGL ビューを含む別のビュー コントローラーに GKLeaderboardViewController を表示しようとしています。ビューは問題なく表示されますが、親ビューが反時計回りに 90 度回転し、親ビュー コントローラーのタッチ応答性やその他の機能が損なわれます。GKLeaderboardViewController も正常に閉じられます。親ビューの作成に使用されるコードは次のとおりです。
viewController = [[RootViewController alloc]init];
viewController.wantsFullScreenLayout = YES;
//
// Create the EAGLView manually
// 1. Create a RGB565 format. Alternative: RGBA8
// 2. depth format of 0 bit. Use 16 or 24 bit for 3d effects, like CCPageTurnTransition
//
//
EAGLView *glView = [EAGLView viewWithFrame:[window bounds]
pixelFormat:kEAGLColorFormatRGB565 // kEAGLColorFormatRGBA8
depthFormat:0 // GL_DEPTH_COMPONENT16_OES
];
// attach the openglView to the director
glView.multipleTouchEnabled = YES;
[director setOpenGLView:glView];
// // Enables High Res mode (Retina Display) on iPhone 4 and maintains low res on all other devices
// if( ! [director enableRetinaDisplay:YES] )
// CCLOG(@"Retina Display Not supported");
//
// VERY IMPORTANT:
// If the rotation is going to be controlled by a UIViewController
// then the device orientation should be "Portrait".
//
// IMPORTANT:
// By default, this template only supports Landscape orientations.
// Edit the RootViewController.m file to edit the supported orientations.
//
//#ifdef _ARM_NEON_
//#define ARCH_OPTIMAL_PARTICLE_SYSTEM CCQuadParticleSystem //used to be CCQuadParticleSystem
//#elif _ARM_|| TARGET_IPHONE_SIMULATOR
//#define ARCH_OPTIMAL_PARTICLE_SYSTEM CCPointParticleSystem
//#else
//#error(unknown architecture)
//#endif
[director setAnimationInterval:1.0/60];
[director setDisplayFPS:NO];
[viewController.view addSubview:glView];
[viewController.view sendSubviewToBack:glView];
[window addSubview:viewController.view];
[window setRootViewController:viewController];
[[ZGCGKHelper sharedGameKitHelper]setViewController:viewController];
[window makeKeyAndVisible];
私はリーダーボード ビューを次のように表示しています。
-(void) presentViewController:(UIViewController*)vc
{
UIViewController* rootVC = [self getRootViewController];
[[CCDirector sharedDirector] stopAnimation];
[rootVC presentViewController:vc animated:YES completion:^(void){
[[CCDirector sharedDirector] startAnimation];
}];
}
ゲーム センターによって表示される通知は正しい方向に向けられ、EAGLView には干渉しませんが、リーダーボード ビューには干渉します。これを修正する方法についてのアイデアはありますか? この問題は、iOS 6 にアップグレードした後に発生しました。