一個可以編程方式創建UIPopoverController然後設置其的viewController,passthough意見等:獲取參考UIPopoverController W /塞格斯
- (IBAction)showCustomPopoverButtonHandler:(id)sender {
if (self.colorPicker == nil) {
self.colorPicker = [[ColorPickerTableViewController alloc] initWithStyle:UITableViewStylePlain];
_colorPicker.delegate = self;
self.colorPickerPopover = [[UIPopoverController alloc] initWithContentViewController:_colorPicker];
}
[self.colorPickerPopover setPassthroughViews:@[self.containerView]];
[self.colorPickerPopover presentPopoverFromRect:self.showCustomPopoverButton.frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionRight
animated:YES];
}
不過,我想利用故事板/ seques。如果採取這種做法,我不知道如何獲取到UIPopoverController實例的綱領性參考:
任何人都知道如何做到這一點?我希望像
UIPopoverController* pvc = self.popoverController;
我還列舉了childViewControllers要檢查他們的類類型:
// Get references to child view controllers.
for(NSUInteger index = 0; index < self.childViewControllers.count; index++){
id obj = self.childViewControllers[index];
if([obj isKindOfClass:[UIPopoverController class]]){
self.menuPopoverController = self.childViewControllers[index];
}
}
對不起,我遲到了閱讀你的問題,但我很高興你找到了答案。在segue和storyboard中實現popover的一個優點是你不必編寫代碼來解僱它。彈出窗口會自動解除。另外,錨定的視圖用一個簡單的ctrl-拖動來設置。 – 2013-03-04 18:51:19
錨點視圖不能總是像這樣設置。例如,我有兩個容器視圖,並希望將錨點設置爲其中一個容器視圖內的控件。但是大多數情況下可以這樣設置。 – VaporwareWolf 2013-03-04 19:18:38