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