当我在 UIKit 上做某事时,我真的很想问一个问题。
我什么时候必须打电话setNeedsDisplay
,什么时候setNeedLayout
?
调用setNeedDisplay
强制 iOS 重绘。setNeedLayout
强制layoutSubviews
方法在下一次重绘之前被调用。
您可以查看 Apple 文档。
setNeedsLayout
将布局子视图
当您想要调整视图的子视图的布局时,请在应用程序的主线程上调用此方法。
setNeedsDisplay
将要求重绘您的视图(drawRect: 等)。
您可以使用此方法或 setNeedsDisplayInRect: 通知系统您的视图内容需要重绘。
简单来说
setNeedsDisplay :重绘视图 setNeedsLayout :调整视图的定位/大小