WEPopoverController presentPopoverFromBarButtonItem导致指定的UIBarButtonItem消失

Tyl*_*mes 5 iphone uipopovercontroller

我已经开始使用WEPopoverController在屏幕底部的工具栏中单击UIBarButtonItem后显示一些控件.弹出窗口显示正常,弹出窗口内的控件工作,但是一旦显示弹出窗口UIBarButtonItem,它就会被锚定消失!

这是显示的代码,非常简单:

WEPopoverController *wePopover = [[WEPopoverController alloc] initWithContentViewController:audioController];
[wePopover setPopoverContentSize:CGSizeMake(200, 150)];
[wePopover presentPopoverFromBarButtonItem:voiceButton permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
Run Code Online (Sandbox Code Playgroud)

如果我使用presentPopoverFromRect,它将起作用,但这不是理想的解决方案.

以前有人遇到这个问题吗?

Nir*_*lan 0

我猜问题在于类别类UIBarButtonItem(WEPopover),它实现了
- (CGRect)frameInView:(UIView *)v. 在此过程中的某个地方,自定义视图被清空,并且之后不会返回到视图层次结构。
如果您尝试使用标准 barButtonItem (无自定义视图),则弹出窗口将正确显示,而不会隐藏该项目(但这不是解决方案)。
无论如何,从 rect 呈现也是我使用的解决方案。