在缩小弹出框的内容大小时防止伪影

Posted

技术标签:

【中文标题】在缩小弹出框的内容大小时防止伪影【英文标题】:Preventing artifacts when shrinking a popover's content size 【发布时间】:2011-03-10 20:58:19 【问题描述】:

我在 iPad 应用程序的弹出框内有一个导航控制器。导航控制器拥有列表视图的层次结构。它们都可以有不同的行数。

当我从一个导航到下一个并返回时,我使用setContentSizeForViewInPopover: 将内容大小更改为正确的表格高度。这很有效,并且当弹出框需要增长以适应视图时看起来不错。

但是当新尺寸小于当前弹出框尺寸时,系统似乎通过“涂黑”(剪裁)即将被截断的视图部分来启动尺寸动画,这是一个丑陋的视觉伪影.理想情况下,我希望视图的额外部分保持可见,并逐渐被动画覆盖。

有人知道解决这个问题的方法或我应该考虑的更好方法吗?

谢谢。

【问题讨论】:

是的,很遗憾听到您对 UIPopoverController 也有问题。我决定自己写而不是处理这些垃圾。祝你好运! 弹出框实际上效果很好。问题是糟糕的文档。为每个记录不充分的组件编写自己的组件似乎不是一个好的解决方案。 【参考方案1】:

我很确定我理解你的问题。

问题不在于弹出框,而在于弹出框内的视图。 如果您正在调整弹出框大小,我想这是因为您更改了它包含的视图的大小。您是否使用动画更改了弹出框内容的大小?如果不是,你看到的就是你编程的。

您的弹出窗口中的视图应始终可自动调整大小以完全填充弹出窗口。

【讨论】:

以上是关于在缩小弹出框的内容大小时防止伪影的主要内容,如果未能解决你的问题,请参考以下文章

弹出框的最大尺寸

layui 子弹出框操作成功后, 刷新父弹出框的内容

element plus中组件Popover弹出框点击内容区关闭弹出框的解决办法

将弹出框的数据内容存储在变量中

动态更改 Bootstrap 弹出框的模板

增加弹出框的宽度