UIView的snapshotViewAfterScreenUpdates:,判断afterScreenUpdates是否需要为YES

liv*_*124 5 calayer uiview ios

如果您在尚未显示的视图上调用[view snapshotViewAfterScreenUpdates:NO],您将获得:

对尚未渲染的视图进行快照会生成空快照。确保您的视图在屏幕更新之前或快照之前至少渲染过一次。

这通过将参数更改为 YES 来消除,这是有道理的。通过 YES 会影响性能,除非它尚未显示,否则我不需要“屏幕更新后”。有没有办法知道何时传入 NO 会导致该错误,以便我只能在那种情况下传入 YES?

我试过[view snapshotViewAfterScreenUpdates:view.layer.needsDisplay],但没有做到。

Aus*_*tin 2

我认为不会UIView暴露它是否有未渲染的更改。通常,只有NO当我知道(基于上下文)视图已经显示时,例如为即将删除的视图创建快照时,我才会通过。