jjzjj

setNeedDisplay

全部标签

ios - 尽管调用了方法 "setNeedDisplay",但 UIScrollView 内的 UIView 并未自行刷新

我有一个UIScrollView,里面有一些从xib文件加载的View。UIScrollView只加载三个View。当前,左一个和右一个。例如,我在当前View的左边有一个view,右边有一个view。如果我向右滚动,UIScrollView将删除左侧的View,向右滚动到新的当前View并将新View加载到新的当前View。此外,我在UIScrollView之外还有一个按钮。当我单击它时,它会更改UIScrollView上显示的当前View的背景颜色。它运行良好,但有时,我不知道为什么,当我点击按钮更改View的背景颜色时,View的背景颜色已经很好地改变了,但是View没有刷新,所

ios - 调用 setNeedsLayout 或 setNeedDisplay 的时机

我已经阅读了一些关于setNeedsLayout和layoutIfNeeded之间的区别的文章,而我关注的是:1。如果我想要立即布局,我是否需要同时调用这两个方法,因为我已经多次看到这种组合2。我什么时候需要调用setNeedsLayout?据我了解,如果我更改View的框架,它将在下一个周期更新布局,我不必显式调用setNeedsLayout 最佳答案 这些东西的工作原理是通过失效来消除冗余。View将包含是否需要布局的信息。因此调用setNeedsLayout只会将一些内部bool值needsLayout设置为true。一旦la