4 Stimmen

Wie kann man eine mit Interface Builder erstellte Ansicht als UIPopoverController anzeigen?

Ich möchte meine Ansichten ruhig in Interface Builder entwerfen, dann in der Lage sein, sie dynamisch als UIPopoverController anzuzeigen.

Ich fand dieses wertvolle Tutorial von Ray Wenderlich, aber ich kann es nicht auf meine Bedürfnisse ausweiten.

Kann mir jemand helfen?

7voto

BBog Punkte 3560

Normalerweise gehe ich folgendermaßen vor: Nehmen wir an, ich habe einen übergeordneten View-Controller, in dem ich das Popover präsentieren möchte. Ich deklariere einen Popover-Controller als eine Eigenschaft für diesen VC ( @property (nonatomic, retain) UIPopoverController* popOverController; )

Der Code für die Darstellung eines Popover mit einem neuen ViewController, nennen wir ihn ViewController2, wäre folgender

ViewController2* viewController2 = [[ViewController2 alloc] initWithNibName:@"ViewController2"  bundle:nil];

self.popOverController = [[UIPopoverController alloc] initWithContentViewController:viewController2];

popOverController.popoverContentSize = CGSizeMake(350, 216); //or whatever size you need

//this will present the view controller from the sender's frame, assuming this code is used inside an IBAction 
//and the popover's arrow will point down
[popOverController presentPopoverFromRect:[sender frame] inView:self.view  permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES]; 

[viewController2 release];

[popOverController release];

Das war's auch schon... Wenn Sie auf Probleme stoßen, werde ich versuchen, Ihnen mehr Informationen zu geben.

P.S. Ich behaupte nicht, dass dies der beste Weg ist, ich habe weniger als ein Jahr Erfahrung mit iOs, aber so machen wir es normalerweise, wo ich arbeite.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X