下面是我用来显示弹出窗口的一些代码。 第一次调用时会显示弹出窗口。 第二次调用失败,出现“EXE_BAD_ACCESS”错误。 它在“self.myTextPopOver = pop;”行失败 如果我注释掉行 [pop release] 一切正常,但这意味着我正在泄漏内存。
// Popover Text
- (IBAction)popoverText
{
// Create a popover object
setTextPopOver *setTX = [[setTextPopOver alloc] init];
// Create a UIPopover controller based on a setTextPopOver object
UIPopoverController *pop = [[UIPopoverController alloc] initWithContentViewController:setTX];
// Set self as the delegate
setTX.delegate = self;
// Set the mySelectColorView to PopOver Controller
self.myTextPopOver = pop;
[pop release];
// Present the Popover
[self.myTextPopOver presentPopoverFromRect:titleBack.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:true];
[self.myTextPopOver setPopoverContentSize:setTX.view.frame.size];
[setTX release];
}
最佳答案
你能展示完整的调用堆栈吗?
如果在显示另一个弹出窗口时发生这种情况,您应该先调用 [popoverController dismissPopoverAnimated:YES];
。
关于iPad弹出问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3732691/