Ich habe ein Popover mit einem UINavigationController. Ich kann das Popover gut anzeigen, und es enthält den navController ganz gut. Der navController enthält eine Tabellenansicht. Wenn ich ein Element auswähle, wird eine neue Detailansicht erstellt:
DeviceDetailViewController *detailViewController =
[[[DeviceDetailViewController alloc] initWithNibName:@"DeviceDetailViewController" bundle:nil] autorelease];
Ich schiebe es dann auf den neuen View Controller:
[self.navigationController pushViewController:detailViewController animated:YES];
In diesem Fall tritt das Problem auf: Nach dem Drücken der neuen Ansicht wird die Größe des Popovers auf die auf dem iPad verfügbare maximale Höhe geändert.
Ich habe versucht, die Höhe aller Ansichten in der xib auf eine feste Höhe anstatt auf eine flexible einzustellen. Ich habe versucht, die Höhe des Popovers explizit einzustellen. Ich habe auch versucht, verschiedene Ansichts-Controller als untergeordnete Ansicht zu verwenden. Das Problem bleibt bestehen: Das Popover möchte die Größe automatisch auf die maximale Höhe ändern, wenn eine neue Ansicht auf den Navigationscontroller verschoben wird.
In dieser Frage wird der Versuch erörtert, die Größe des Popovers beim Verschieben neuer Ansichten gezielt zu steuern:
Ich dachte, dies könnte eine Brute-Force-Methode sein, um die Größe zu kontrollieren. Seltsamerweise führt dies jedoch zu einigen schnellen Grafikproblemen (als würde die Ansicht frisch animiert), gefolgt von einer weiteren Größenänderung wie oben beschrieben.
Mit anderen Worten, zwingt etwas buchstäblich die popover auf seine maximale Höhe, und es scheint , aufzutreten , nachdem alle aufgerufen wurden.
Ist es der Navigationscontroller? Hat jemand so etwas gesehen?