我想在 Interface Builder 中安静地设计我的 View ,然后能够将它们作为 UIPopoverController 动态显示。

我找到了 Ray Wenderlich 的 this precious tutorial,但我无法将其扩展到我的需要。

任何人都可以帮助我吗?

最佳答案

这是我通常的做法:假设我有一个父 View Controller ,我想在其中显示弹出框。
我将一个弹出 Controller 声明为该 VC 的属性(@property (nonatomic, retain) UIPopoverController* popOverController; )

使用新的 View Controller 呈现弹出框的代码,我们称之为 ViewController2,就是这个

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];

差不多就是这样...
如果您遇到任何问题,我会尽力为您提供更多信息。

附言我并不是说这是最好的方法,我在 iO 方面的经验还不到一年,但这就是我们通常在我工作的地方这样做的方式

10-08 05:31