objective-c - 具有 iPad 视网膜显示屏的模拟器

标签 objective-c ios cocos2d-iphone ios-simulator

我的模拟器有问题,我尝试使用空间管理器和我的委托(delegate)制作应用程序。我有这个源.. 我尝试为每个设备具体设置代码,那里写着//这是问题所在,我尝试为带有视网膜显示屏的 ipad 设置代码,当我启动模拟器时,一切正常,但带有视网膜显示屏的 ipad 无法加载,只有当我在那里设置时才会加载 [director enableRetinaDisplay:NO];然后它在没有视网膜的情况下运行。 那么有谁知道,如何设置它以允许视网膜显示以另一种方式工作?谢谢。

    if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone )
{
    CGSize result = [[UIScreen mainScreen] bounds].size;


    if(result.height == 480 && [director enableRetinaDisplay:YES] == YES)
    {
        NSLog(@"iphone 4");
         [[CCDirector sharedDirector] replaceScene:[GameLayer node]];
    }


    if(result.height == 480 && [director enableRetinaDisplay:YES] == NO)
    {
        NSLog(@"iphone 3");
        [[CCDirector sharedDirector] replaceScene:[GameLayer node]];
    }



    if(result.height == 568)
    {
        NSLog(@"iphone 5");
        [[CCDirector sharedDirector] replaceScene:[Menu node]];
    }

}


if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
    CGSize result = [[UIScreen mainScreen] bounds].size;


    if(result.height == 1024 && [director enableRetinaDisplay:YES] == NO)
    {
        NSLog(@"iPad");
        [[CCDirector sharedDirector] replaceScene:[GameLayer node]];
    }

    if([director enableRetinaDisplay:YES] == YES)
    {
        NSLog(@"iPad retina");

        //HERE IS THE PROBLEM
        //HERE IS THE PROBLEM
        //[director enableRetinaDisplay:NO];

        [[CCDirector sharedDirector] replaceScene:[GameLayer node]];
    }
}

最佳答案

这是早期 Cocos2D 构建中的一个已知错误,但可以通过对 CCDirectorIOS 类进行小的更改来相当容易地修复。您需要将第 212/213 行替换为以下行:

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad &&
[[UIScreen mainScreen] scale] > 1.0 )
{gluPerspective(60, (GLfloat)size.width/size.height, zeye-size.height/2, zeye+size.height/2 );
} else {
gluPerspective(60, (GLfloat)size.width/size.height, 0.5f, 1500);
}

注意:这不是我的解决方法,我只是在遇到同样的问题后通过谷歌搜索发现的。完整的解释可以在这里找到:http://swainya.blogspot.no/2012/03/black-screen-on-simulator-for-ipad.html归功于 Spencer Ho...

关于objective-c - 具有 iPad 视网膜显示屏的模拟器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14123499/

相关文章:

ios - 使用 UITableViewAutomaticDimension 在顶部插入行时保持 UITableView 偏移

objective-c - 在 UINavigationBar 中 setBackgroundImage 之后使用 barStyles

ios - 在 IOS10 Widget 中以编程方式更改 NCWidgetDisplayMode

ios - ionic 2 后请求不起作用

iphone - 游戏中心细节

ios - 使用 cocos2d 2.0 的 iPhone5S 上的旋转动画问题

ios - 如何在点击时制作 scrollView 'bounce'

objective-c - Snow Leopard 中的文件大小

ios - AFHTTPRequestOperationManager 自定义 http header 始终以 "HTTP_"开头?

ios - 我怎样才能使线与线本身发生碰撞?