UITableView korrigiert die Bildlaufposition nach der Gerätedrehung

Ich baue so etwas wie einen Leser für ein Buch. Wenn der Benutzer das Telefon dreht, möchte ich die Schriftgröße erhöhen. Ich benutze eineUITableView um Textblöcke anzuzeigen.

Das Problem ist, dass das Erhöhen der Schriftgröße die Zeilenhöhe in meiner Tabellenansicht erhöht. Wenn ich im Hochformat den Absatz 320 gelesen habe, erhalte ich im Querformat den Wert 280 oder ähnliches.

Ich habe einen Rotationsbenachrichtigungs-Listener mit folgendem Code eingerichtet:

    UIDevice *device = [UIDevice currentDevice];                
    [device beginGeneratingDeviceOrientationNotifications];
    NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
    [nc addObserver:self                                
           selector:@selector(orientationChanged:)
               name:UIDeviceOrientationDidChangeNotification
             object:device];

und versucht, den letzten Absatzindex vor der Drehung zu speichern und dann nach der Drehung nach unten zu diesem zu scrollen, aber ich kann den gewünschten Effekt scheinbar nicht erzielen.

Wie gehe ich am besten mit einer solchen Situation um und wo implementiere ich die Rotationszustände "vor" und "nach"?

Ich möchte, dass es auf iOS 4+ funktioniert.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage