Вы можете сохранить dateViewPopOverController в качестве переменной экземпляра в контроллере представления, из которого вы представляете всплывающее окно.Таким образом, когда всплывающее окно отклоняется, ваш контроллер представления все еще удерживает отображаемый элемент dateViewPopOverController.
в вашем файле .h:
@interface YourViewControllerName : UIViewController {
dateViewPopOverViewController_iPad *dateViewPopOverViewController;
// other ivars...
}
@property (nonatomic, retain) dateViewPopOverViewController_iPad *dateViewPopOverViewController;
// other @properties...
в вашем файле .m:
синтез:
@synthesize dateViewPopoverController;
ваш метод:
- (IBAction) selectStartDate:(id) sender {
NSLog(@"Select start date");
// create your view controller if it doesn't exist yet
if (dateViewPopOverController == nil)
dateViewPopOverViewController =
[[dateViewPopOverViewController_iPad alloc] init];
popover2 = [[UIPopoverController alloc]
initWithContentViewController:dateViewPopOverViewController];
// rest of your method... *but do not release the dateViewPopOverViewController here*
}
освободить контроллер в dealloc:
- (void) dealloc {
[dateViewPopOverViewController release];
// rest of dealloc...
}