2012-03-29 8 views
0

Ich aktualisiere gerade mein Spiel mit XCode 4.3.1 und einem iPad3. Wenn iPAD HD-Modus ausgewählt ist, erhalte ich einen schwarzen Bildschirm, wenn ich die Szene aus dem AppDelegate ändere.iPad3 HD Schwarzer Bildschirm im Hochformat Orientierung

Ich verwende Cocos2D v1.0.1

Mein Spiel ist nur Portrait-Modus, und ich denke, ich habe das Problem aufgespürt habe.

Wenn Sie ein neues Projekt mit der Standard-HelloWorld-Schicht erstellen, funktioniert es auf dem iPad3 und seinem Simulator in HD.

Allerdings, wenn Sie den folgenden Code ändern: -

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 

... 

#elif GAME_AUTOROTATION == kGameAutorotationUIViewController 
// 
// EAGLView will be rotated by the UIViewController 
// 
// Sample: Autorotate only in landscpe mode 
// 
// return YES for the supported orientations 

//return (UIInterfaceOrientationIsLandscape(interfaceOrientation)); 
return (UIInterfaceOrientationIsPortrait (interfaceOrientation)); 

//return NO; 

... 
} 

In RootViewController.m

Sie sehen einen schwarzen Bildschirm für das iPad3 reale Gerät und Simulator. Es funktioniert wie bei allen Geräten erwartet, iPhone/iPod Touch und iPad 1 und 2

Wenn ich die Aussage zurück zu

return (UIInterfaceOrientationIsLandscape (interfaceOrientation)) zu ändern;

Ich bekomme die Hallo Welt auf den Bildschirm gerendert, aber es ist in der Landschaft nur auf dem iPad3.

Hat jemand anderes dieses gefunden und irgendwelche Vorschläge für eine Reparatur?

Das Projekt ist ziemlich groß, um auf den neuesten V1 Beta-Code zu aktualisieren.

+0

Sind Sie sicher, dass 'GAME_AUTOROTATION' als 'kGameAutorotationUIViewController' definiert ist? – jonsibley

Antwort

2

seit es zu spät, um zu antworten. Es kann andere

helfen, diese Codezeile versuchen bei

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: 


[director setProjection:kCCDirectorProjection2D]; 

Hoffnung Ihr Problem zu beheben.

+0

Danke, das behebt tatsächlich das Problem!Gibt es eine Erklärung, warum dies nur auf dem neuen iPad auch passiert und was passiert im Hintergrund mit diesem Anruf? – alexleutgoeb

0

Ich denke, das Problem zu diesem in der neuen Xcode ist, wenn u auf den XCODE 4.5 mit der neuen

IOS 6.0 sdk-Upgrade, das Projekt "unterstützte Schnittstelle Orientierung" -Funktion wird nicht ausgewählt,

try wählen sie alle, wenn u sie alle verfügbar sein soll,

das Problem dadurch lösen,

keine Notwendigkeit, in der App-Delegat zu ändern oder [Direktor setProjection zu verwenden: kCCDirectorProjecti on2D]; weil es das Display durcheinander bringen könnte.

hoffe dies hilft, basierend auf was ich persönlich konfrontiert.

0

Deaktivieren Sie einfach Retina für iPad3 [Director enableRetinaDisplay: YES];

Später können Sie Ihre App für iPad3 aktualisieren, indem Sie XXXXXX-ipadhd.png (ipad Retina Version der Bilder) zu Ihrem Projekt hinzufügen.