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.