0

Ich verwende einen TabBarController, und von einem der Tabs möchte ich einen anderen UIViewController präsentieren, während die TabBar angezeigt wird.Present UIViewController über TabBar

Wenn ich den View Controller einfach präsentiere oder drücke, wird er im Vollbild über der TabBar angezeigt.

Was ist der richtige Weg, um dieses Problem zu lösen?

Antwort

0

Angenommen ViewControllerA ist ein UIViewController von TabBarController. Und die UIViewController, die Sie präsentieren möchten, ist ViewControllerB

Drücken Sie ViewControllerB, während die TabBar angezeigt wird. Einfach in ViewControllerA brauchen Sie nur mit präsentiert ViewControllerB

ViewControllerB *vc = Initialize ViewControllerB here 
vc.modalPresentationStyle = UIModalPresentationOverCurrentContext; 
[self presentViewController:vc animated:YES completion:nil]; 

zu präsentieren

ViewControllerB *vc = // Initialize ViewControllerB here 
[self.navigationController pushViewController:vc animated:YES]; 

zu nennen, stellen Sie sicher, UIModalPresentationOverCurrentContext für modalPresentationStyle Eigenschaft ViewControllerB gesetzt. Wenn nicht, wird es Fullscreen, über die TabBar

präsentieren Zum leichteren Verständnis, ich erstellt a demo repo, können Sie einen Blick darauf werfen.

Verwandte Themen