当键盘出现时,Popover视图箭头会移动

5
我有一个带有搜索栏和搜索栏代理的弹出视图。当弹出视图被呈现时,它会如预期地将箭头指向我按下以拉起它的按钮。但是,当选择搜索字段并将我的视图推上去时,箭头会移动到弹出窗口底部而不是应该锚定的按钮位置。如果键盘被解除,则箭头会滑回到应该在弹出窗口中间的位置。
我可以关闭此弹出窗口并手动调用另一个具有正确箭头位置的弹出窗口,但我觉得这是一个糟糕的解决方案。
当按下按钮时,它会像这样显示:
[over presentPopoverFromRect:self.addCategoryButton.bounds inView:self.addCategoryButton permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

也许它是锚定在视图中的位置,而不是按钮上? - ohr
它似乎是这样运作的,但它是从按钮的边界呈现出来的。当键盘显示后,我该如何调整它到新的边界?我已经尝试重新呈现它,但箭头仍在同一位置(底部)。 - Psiticosis
@Psiticosis,你是在显示键盘时将视图向上推了吗?还是你的意思是我的视图被推上去了。如果你将UIPopoverArrowDirectionLeft更改为UIPopoverArrowDirectionAny会发生什么? - vignesh kumar
同样的问题。你找到解决方案了吗? - Amit Battan
我最终决定删除该项目的箭头。我相信是那个奇怪的视图层次结构让我感到困扰。 - Psiticosis
显示剩余2条评论
1个回答

0

假设按钮是self.view的子视图。 我猜测弹出视图应该这样呈现:

[over presentPopoverFromRect:self.addCategoryButton.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

view.bounds 相对于 view 来说与 view.frame 相对于 view.superview 是相同的,因此这个更改不会有任何影响。 - titaniumdecoy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接