【发布时间】:2012-02-03 15:14:37
【问题描述】:
我在横向使用 cocos2d 引擎,没有自动旋转。
我想显示标准的 GC 成就模式视图。 它从屏幕底部正常显示(在横向握持设备时),但在屏幕右侧消失(如纵向模式视图)。它似乎正在改变解除动画的方向,但在此之前视图没有旋转。它只是向右滑动。
我还在控制台中收到警告:
Unbalanced calls to begin/end appearance transitions for <UIViewController: 0x41b9a0>.
这就是我展示这个控制器的方式:
-(void)showAchievements:(id) sender {
utilityController = [[UIViewController alloc] initWithNibName:nil bundle:nil];
[[[CCDirector sharedDirector] openGLView] addSubview:utilityController.view];
GKAchievementViewController *achievements = [[GKAchievementViewController alloc] init];
if (achievements != nil)
{
achievements.achievementDelegate = self;
[utilityController presentModalViewController: achievements animated: YES];
}
[achievements release];
}
- (void)achievementViewControllerDidFinish:(GKAchievementViewController *)viewController
{
[utilityController dismissModalViewControllerAnimated:YES];
[utilityController release];
}
在 gameConfig.h 我有以下配置:
#define GAME_AUTOROTATION kGameAutorotationNone
试图将其更改为 kGameAutorotationCCDirector - 同样的事情。 kGameAutorotationUIViewController - uiviews 在整个屏幕上跳跃。
请不要建议使用 CGAffineTransformMakeRotation 旋转 UIView - 这只是一个 hack...
【问题讨论】:
标签: iphone objective-c cocos2d-iphone modalviewcontroller game-center