iOS SDK UIViewContentModeScaleAspectFit 与 UIViewContentModeScaleAspectFill [英] iOS SDK UIViewContentModeScaleAspectFit vs. UIViewContentModeScaleAspectFill

查看:33
本文介绍了iOS SDK UIViewContentModeScaleAspectFit 与 UIViewContentModeScaleAspectFill的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在 UITableViewCell 中使用提供 UIImageViewUITableViewCellStyleSubtitle 样式显示图像,以及两行文本,以及可选的附件视图.

I have an image that I would like to display in a UITableViewCell using the UITableViewCellStyleSubtitle style that provides a UIImageView, and two lines of text, plus an optional accessory view.

但是,当我将 UIImageView 的内容模式设置为 UIViewContentModeScaleAspectFitUIViewContentModeScaleAspectFill 时,似乎没有任何区别.这两种内容模式都只是显示整个图像,将文本向右移动以为图像腾出空间.

However, when I set the content mode of the UIImageView to either of UIViewContentModeScaleAspectFit or UIViewContentModeScaleAspectFill, it appears to make no difference. Both of these content modes simply display the entire image, shifting the text to the right to make room for the image.

有没有人举例说明这些在实践中的实际差异?文档说:

Does anyone have any examples of how these actually differ in practice? The docs say:

UIViewContentModeScaleAspectFit:
Scales the content to fit the size of the view by maintaining the aspect ratio. Any     remaining area of the view’s bounds is transparent.

UIViewContentModeScaleAspectFill:
Scales the content to fill the size of the view. Some portion of the content may be  clipped to fill the view’s bounds.

但这些内容模式的表现并不像宣传的那样.

But these content modes don't appear to be behaving as advertised.

我正在运行 SDK iOS 4.

I'm running SDK iOS 4.

推荐答案

您看不到这些模式之间差异的原因是 UITableViewCell 自动调整其图像视图的大小以适应纵横比的图像.仅当视图的纵横比与图像的不同时,内容模式才会发挥作用.

The reason you don't see a difference between those modes is that the UITableViewCell automatically sizes its image view to fit the aspect ratio of the image. The content modes only come into play when the view's aspect ratio is different from the image's.

在您的自定义 UITableViewCell 类中覆盖 layoutSubviews 或自己创建一个图像视图(不要使用表格视图单元格提供的那个).

Either override layoutSubviews in your custom UITableViewCell class or create an image view yourself (don't use the one that the table view cell provides).

这篇关于iOS SDK UIViewContentModeScaleAspectFit 与 UIViewContentModeScaleAspectFill的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆