我已经子类化并且正在使用 UIPopoverBackgroundView 来为我的 UIPopoverControllers 制作自定义外观。到目前为止,一切似乎都很好,弹出框画得很好,看起来像我期望的那样。
问题是,当我的弹出框打开一段时间没有事件时,边框经常会突然画错。这似乎只发生在弹出框包含大于弹出框的 ScrollView /表格 View (即它是可滚动的)时。它也不会每次都发生,但如果确实发生,它会在不活动的不到一分钟内发生。如果我截取屏幕截图,则该问题不可见(尽管它在屏幕上清晰可见),因此很遗憾我无法提供该问题的任何图像。
有谁知道为什么在几秒钟不活动后会错误地绘制边框以及如何解决这个问题?如有必要,我可以提供代码片段,尽管我相当确定一切都是正确的(相当于我在网上看到的许多示例)。在不活动期间,我也不会随时调整弹出框的大小(我会在最初显示时调整大小以适应最大大小的内容)。
由于我无法截取屏幕截图来演示该问题,所以我能做的就是描述它。似乎某些区域的边框以错误的大小绘制(例如,右侧边缘的一部分被绘制在弹出框的中间;不是边框本身太宽,而是边框的区域应该是接壤是错误的)。沿实际边缘的区域仍然存在,但缺少它的图层效果(我有使用边框和圆角图层效果的 backgroundView 给它一个漂亮的圆角白色边缘,模拟与默认背景 View 相同的外观,只是一个不同的颜色)。但是,删除图层效果并不能阻止该问题。有时只是右侧边缘的一部分绘制不正确,有时底部边缘的一部分也会受到影响。我似乎找不到任何相关性与何时或如何发生(尽管它很频繁),也找不到影响哪个边缘(尽管我从未见过它影响顶部或左侧边缘)。
Best Answer-推荐答案 strong>
是只发生在模拟器上还是真机上?
This specifically seems to only happen when the popover contains a scrollview/tableview which is larger than the popover (i.e. it is scrollable)
在这种情况下,您是否调整 ScrollView /表格 View 的大小?尝试在您的 UIPopView 中添加一个 UIView,该 UIView 将成为容器。
关于ios - UIPopoverBackgroundView 边框收缩,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/17550592/
|