情况:
我有一个带有UITextfield的UIViewcontroller
(editViewController)。 editViewController是我的popover contentViewController。弹出窗口显示以下代码:
CGSize size;
size.width = 620;
size.height = 500;
self.myPopover = [[UIPopoverController alloc]
initWithContentViewController:self.editViewController];
self.editPopover.popoverContentSize = size;
[self.editPopover presentPopoverFromRect:self.view.frame
inView:self.view
permittedArrowDirections:0 // or any other direction
animated:YES];
当用户点击UITextField时,键盘会弹出它应该的样子。但是,当我使用键盘隐藏按钮隐藏/显示键盘并再次点击文本字段时,弹出视图会不断重复。看看popover阴影,看看实际存在的问题。
http://www.tectoys.nl/popover_duplicating.jpg
有人知道导致这个问题的原因还是可以给我一个解决方法?
答案 0 :(得分:0)
如果每次显示弹出窗口时都会执行您提供的代码示例,那么这是因为您每次都在创建一个新的UIPopoverController,而您创建的旧UIPopoverController不会被解除。尝试在创建新弹出窗口之前解除弹出窗口:
[self dismissFormPopoverAnimated:NO];
self.myPopover = [[UIPopoverController alloc]
initWithContentViewController:self.editViewController];