OpenFeint仅在屏幕的一半上

时间:2010-09-26 23:13:05

标签: iphone openfeint

我正在尝试在我的Cocos2D iPhone游戏中实现OpenFeint,但这里有些奇怪的我没有找到如何解决。 这是我初始化时OpenFeint的样子: http://img842.imageshack.us/img842/8564/screenshot20100926at520.png 这是初始化的代码:

[director setDeviceOrientation:kCCDeviceOrientationLandscapeLeft];
NSDictionary* settings = [NSDictionary dictionaryWithObjectsAndKeys:
                          [NSNumber numberWithInt:UIInterfaceOrientationLandscapeLeft], OpenFeintSettingDashboardOrientation,
                          @"NAME", OpenFeintSettingShortDisplayName,
                          [NSNumber numberWithBool:NO], OpenFeintSettingEnablePushNotifications,
                          [NSNumber numberWithBool:YES], OpenFeintSettingAlwaysAskForApprovalInDebug, 
                          [NSNumber numberWithBool:YES], OpenFeintSettingDisableUserGeneratedContent, nil];
[OpenFeint initializeWithProductKey:@"PRODUCTKEY" andSecret:@"SECRET"
                     andDisplayName:@"NAME" andSettings:settings andDelegates: [OFDelegatesContainer containerWithOpenFeintDelegate:self]];
[[CCDirector sharedDirector] runWithScene: [MainMenuScene node]];

4 个答案:

答案 0 :(得分:2)

我在几个地方看过你的帖子,因为我遇到了和你一样的问题。我刚刚为你找到了一个潜在的解决方案,我想我会回答。似乎在某些情况下OpenFeint无法访问keywindow,在这种情况下创建它自己的窗口,可能不会像你的那样设置。解决方案是让OpenFeint通过将其添加到设置来明确知道要追踪的窗口。我的设置如下,你可以看到我用我的键控窗口添加了“OpenFeintSettingPresentationWindow”设置。在这之后,它工作得非常好。希望这有帮助!

NSDictionary* settings = [NSDictionary dictionaryWithObjectsAndKeys:
                            [NSNumber numberWithInt:UIInterfaceOrientationLandscapeRight], OpenFeintSettingDashboardOrientation,
                            window, OpenFeintSettingPresentationWindow,
                            @"ComingSoon", OpenFeintSettingShortDisplayName, 
                            [NSNumber numberWithBool:YES], OpenFeintSettingEnablePushNotifications,
                            nil];

答案 1 :(得分:1)

您可能在二进制文件中使用错误的设置包,删除横向并添加iPhone通用设置包。

答案 2 :(得分:0)

我不确定具体是什么问题,但看起来OpenFeint试图以横向显示但是在某种程度上被旋转就好像它处于纵向模式一样。可以oyu仔细检查以确保您的应用程序的主视图控制器(或者您在Cocos2D中配置它)的方向是正确的。 OpenFeint也意识到了这一点?

答案 3 :(得分:0)

cocos2d中,窗口只需要引用applicationDidFinishLaunching中的窗口。