Using a split view on the iPad, I have the following code:
- (void) splitViewController:(UISplitViewController *)svc willHideViewController:(UIViewController
The code I used to show the popover in RootViewController.m:
- (IBAction) addCategory:(id)sender {
AddCategoryViewController *content = [[AddCategoryViewController alloc] init];
UIPopoverController *aPopover = [[UIPopoverController alloc]
initWithContentViewController:content];
aPopover.delegate = self;
// Store the popover in a custom property for later use.
self.addCategoryPopover = aPopover;
addCategoryPopover.delegate = self;
[aPopover release];
[content release];
[addCategoryPopover presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
}
This I used to try and dismiss it from another class:
-(IBAction)saveAddCategory:(id)sender {
rootViewController = [[RootViewController alloc] init];
[rootViewController dismissPopover];
}
My dismissPopover
function looks like:
- (void) dismissPopover {
if ([self.addCategoryPopover isPopoverVisible]) {
[self.addCategoryPopover dismissPopoverAnimated:YES];
}
if (addCategoryPopover.popoverVisible == YES) {
[addCategoryPopover dismissPopoverAnimated:YES];
}
}