iOS游戏中心“注册”屏幕 - 以编程方式更改方向

时间:2012-05-05 11:42:39

标签: ios orientation landscape game-center

由于某种原因,我无法使用任何自动函数来处理设备上的旋转(例如shouldAutorotateToInterfaceOrientation)。我总是不得不手动使用它:

SOMETHING.view.transform = CGAffineTransformMakeRotation( angle * M_PI );

我真的不介意 - 我甚至喜欢手动旋转一切。除了Game Center之外,这个工作正常。

旋转匹配器是没有问题的 - 在这个窗口中你可以找人玩。

我会提到这个,以防万一,因为我在这里看到了类似的问题 - 但它是我遇到的问题:

GKMatchmakerViewController *mmvc = [[[GKMatchmakerViewController alloc] initWithMatchRequest:request] autorelease];    
    mmvc.matchmakerDelegate = self;

    [presentingViewController presentModalViewController:mmvc animated:YES];
    mmvc.view.transform = CGAffineTransformMakeRotation( angle * M_PI ); 

这使得Game Center的匹配器非常精细,但我不知道如何为匹配器之前的实际“登录”屏幕做同样的事情。我没有创建视图控制器,在调用“Authenticate”函数时似乎一切都会自动完成。由于它是自动完成的,我不知道如何控制结果视图。

- (void)authenticateLocalUser { 

if (!gameCenterAvailable) return;

NSLog(@"Authenticating local user...");
if ([GKLocalPlayer localPlayer].authenticated == NO) {     

     [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error) {

     if ([GKLocalPlayer localPlayer].isAuthenticated)

     {

         // Perform additional tasks for the authenticated player.
          [[GCHelper sharedInstance] findMatchWithMinPlayers:2 maxPlayers:2 viewController:nil];

     }

     }];  
} else {
    NSLog(@"Already authenticated!");
}

}

此时,我已经进入“登录”屏幕,我不知道如何控制它。

如何在不使用任何自动功能的情况下,以编程方式更改该方向(以及您输入Apple ID和密码的下一个方向)的方向?

1 个答案:

答案 0 :(得分:0)

最新版本的SDL 2.0大大改进了方向支持。我在这里使用Game Center应用程序可以显示和旋转到任何方向,它可以正常工作。

http://www.libsdl.org/tmp/SDL-2.0.zip