2009-05-27 8 views
4

genannt ich die eine RootViewController erstellt haben, und dann diese geosensitive machen durchwillAnimateSecondHalfOfRotationFromInterfaceOrientation nicht in root-View-Controller

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
    return YES; 
} 

In RootViewController willAnimateSecondHalfOfRotationFromInterfaceOrientation Verfahren das Schreiben aufgerufen wird und Bilder werden die Größenänderung.

Ich habe auch einige Ansichten über sie, aber wenn ich den Bildschirm die Ansicht drehen wird sich drehen, aber die Bilder sind Ändern der Größe nicht, obwohl ich die gleiche

verwendet haben
-(void)willAnimateSecondHalfOfRotationFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation duration:(NSTimeInterval)duration 
{ 
    UIInterfaceOrientation toOrientation = self.interfaceOrientation; 
} 

Methode, aber es kann nicht aufgerufen. Also, was kann ich tun? Bitte hilf mir.

+0

Ihre Methode wird wahrscheinlich aufgerufen, aber es tut nichts. –

+0

Frage könnte noch einen aussagekräftigeren Titel benötigen. – Kriem

+1

Beschreibender Titel und korrekte Verwendung von Markdown (Surround-Inline-Code mit '' und Verwendung der Codeformat-Schaltfläche für größere Codeblöcke) erleichtern die Beantwortung Ihrer Frage. Ich habe diese für dich repariert. –

Antwort

5

Das hat mich auch. Ich denke, Sie werden die Antwort finden, wenn Sie diese Header-Datei für UIViewController betrachten. Es gibt Kommentare gibt, in welchem ​​Zustand die Sie überschreiben können ENTWEDER

  • (void) willAnimateRotationToInterfaceOrientation: toInterfaceOrientation Dauer:

OR eine der folgenden

  • (void) willAnimateFirstHalfOfRotationToInterfaceOrientation: Dauer:
  • (void didAnimateFirstHalfOfRotationToInterfaceOrientation):
  • (void) willAnimateSecondHalfOfRotationFromInterfaceOrientation: Dauer:

Anscheinend, wenn Sie die erste außer Kraft setzen, das ist die einzige, die aufgerufen wird. Wenn Sie eine Rückmeldung von jeder Phase der Drehung wünschen, verwenden Sie eine der im zweiten Satz, aber lassen Sie die erste los.

1

Eine andere Sache, die Sie beachten sollten, ist, dass Sie die Methode shootAutorotateToInterfaceOrientation außer Kraft gesetzt haben, um andere Rotationen als den Standard von Porträt zuzulassen.

Zum Beispiel:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
    // Return YES for supported orientations 
    return YES; 
} 

Wenn Sie dies nicht tun, wird Ihre implementated Methoden nicht aufgerufen werden.

Verwandte Themen