【问题标题】:UIPopoverController moves strangely on iOS 7 when keyboard appears当键盘出现时,UIPopoverController 在 iOS 7 上奇怪地移动
【发布时间】:2013-10-02 22:59:08
【问题描述】:

我有一个带有文本字段的 UIPopoverController。在 iOS 6 上,当用户点击文本字段并且弹出框恰好挡住了屏幕上的键盘滑动时,弹出框会很好地移开。

在 iOS 7 上,它会飞到屏幕边缘。太可笑了。

这只是 iOS 7 中的一个错误吗?有没有办法在 iOS 7 中控制以前不存在的这种行为?

谢谢。

【问题讨论】:

  • 你在使用 UISplitViewController 吗?
  • 我有同样的错误,但还没有找到解决办法
  • 我也面临 iOS6 的类似问题。所以它不是 iOS 版本特定的错误。它可能是默认功能,但很奇怪。

标签: ios7 uipopovercontroller


【解决方案1】:

尝试将permittedArrowDirectionsUIPopoverArrowDirectionAny改成UIPopoverArrowDirectionLeft | UIPopoverArrowDirectionRight in -

(void)presentPopoverFromRect:(CGRect)rect inView:(UIView *)view allowedArrowDirections:(UIPopoverArrowDirection)arrowDirections animated:(BOOL)animated;

【讨论】:

  • 这似乎确实缓解了这个问题......虽然它感觉更像是一种解决方法而不是解决方案。不过谢谢!
  • 另一种解决方案 - 您可以在键盘显示之前更改弹出框大小。看到这个要点gist.github.com/pingwinator/7235232
  • 我遇到了一些问题,UIPopoverController 从正确的矩形呈现自己,然后将自己动画到屏幕上的(看似)随机位置。这解决了它。谢谢!
【解决方案2】:

似乎弹出框的箭头方向有问题。 这个论坛帖子是相关的,似乎有更多信息 https://devforums.apple.com/message/873738#873738

https://devforums.apple.com/message/885612#885612

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-02
    • 2015-03-29
    • 1970-01-01
    • 1970-01-01
    • 2019-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多