Ios UIViewContentModeRedraw与setNeedsDisplay?

Ios UIViewContentModeRedraw与setNeedsDisplay?,ios,xcode,Ios,Xcode,我不知道setneedsdisplay和uiviewcontentmoderedraw之间的区别,你什么时候会使用它们,它们不是完全一样吗?它们是不同的东西setNeedsDisplay是一个动词。使用它告诉视图它正在查看的内容的状态已更改,因此它应该重新绘制(通过在运行循环的下一次迭代中调用其drawRect:method) contentMode是视图的一个属性。它不会导致视图立即执行任何操作。它指定视图如何处理与其大小相关的内容UIViewContentModeRedraw是可以分配给此属

我不知道setneedsdisplay和uiviewcontentmoderedraw之间的区别,你什么时候会使用它们,它们不是完全一样吗?

它们是不同的东西
setNeedsDisplay
是一个动词。使用它告诉视图它正在查看的内容的状态已更改,因此它应该重新绘制(通过在运行循环的下一次迭代中调用其drawRect:method)

contentMode
是视图的一个属性。它不会导致视图立即执行任何操作。它指定视图如何处理与其大小相关的内容
UIViewContentModeRedraw
是可以分配给此属性的值。这意味着视图将通过使自身重新绘制来呈现大小更改(通过调用自身上的
setNeedsDisplay

如果您计划为视图大小的更改设置动画,那么,
UIViewContentModeRedraw
是一个昂贵的选择,因为它将尝试在动画期间从头开始重复重画(而不是操作位图副本)