一个非常奇特的错误:
我有 BarButtonItem 弹出一个 UIPopoverController 像这样:
-(void) addNewProjectButtonClicked:(id)sender
{
//Some Preparations....
[popover presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
正如预期的那样,弹出框控制器出现在正确的位置。
现在,我期待当我在弹出框外触摸任何地方时,它都会被解散。
好吧,唯一的问题是,当我再次点击 BarButton(弹出弹出框的那个)而不是像我期望的那样关闭旧按钮并呈现新按钮时,结果是现有弹出框之上的另一个弹出框。这意味着当我一次又一次地按下时,我会得到一堆弹出窗口,只有在其他地方多次点击才能消除这些弹出窗口。
我知道我可以在这里使用一些单例设计模式来解决这个问题,但是没有更简单的内置方法来处理它吗?
谢谢!