objective-c - 在 UIImageView 中区分黑白重绘和缩放以填充模式?

标签 objective-c uiimageview interface-builder xcode4.2

对于 UIImageView,在界面生成器中提供了不同的模式选项,例如 Aspect Fit、Aspect Fill。谁能告诉我这两种模式有什么区别:Scale to Fill VS Redraw

最佳答案

UIViewContentModeScaleToFill

第一次调用drawRect: 并渲染 View 。稍后,当几何图形发生变化时,drawRect: 不会被调用,并且已渲染的内容会被缩放以绘制 View 。

UIViewContentModeRedraw

每次更改边界时,都会调用drawRect: 一次又一次地渲染 View 。除非你知道你真正在做什么,除非你真的需要它,否则不要使用它。它要慢得多,因为它必须一次又一次地调用 drawRect:。换句话说,当您设置 UIViewContentModeRedraw 时,它的行为与每次更改边界时调用 setNeedsDisplay 时的行为相同。

简化的解释,但应该为您澄清一点。

关于objective-c - 在 UIImageView 中区分黑白重绘和缩放以填充模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12196007/

相关文章:

iphone - 如何在 UITableViewCell 中获取透明附件 View ? (带屏幕截图)

ios - UITableView 和解析 - 滞后

iOS:运行 iOS 模拟器时加载随机 UIImageView

ios - 从中心点调整 UIImageView 的大小

ios - 为什么 UIImageView 不填满整个 CollectionViewCell 即使我有所有的约束

ios - 表格 View 单元格中的文本未换行到第二行

ios - 在界面生成器中更改 SearchDisplayController 委托(delegate)

ios - 基于scrollView动态改变位置

ios - 如何在 iOS 上退出应用程序时关闭网络扩展

ios - ARC 是否保留在方法参数内分配的对象