设置 UIImageView 以显示图像的中间部分

Posted

技术标签:

【中文标题】设置 UIImageView 以显示图像的中间部分【英文标题】:set UIImageView to display middle section of an image 【发布时间】:2012-11-12 14:19:38 【问题描述】:

我有一个图像视图,我想显示用户个人资料图片的中心部分。我想缩放图片,使宽度与屏幕宽度相匹配,同时保持纵横比,使图像居中,然后在顶部/底部有任何多余的东西根本不出现。

我尝试将 imageView.contentMode 设置为 UIViewContentModeScaleAspectFillUIViewContentModeScaleAspectFitUIViewContentModeCenter 和其他一些,但它要么调整我的 UIImageView 大小、更改纵横比,要么不填充该区域。

【问题讨论】:

UIViewContentModeScaleAspectFill 应该做你需要的。你从中得到什么结果? 【参考方案1】:

“但它会调整我的 UIImageView 的大小”

我猜你看到了裁剪的部分。 也许您忘记了“clipsToBounds”属性?

UIImageView *view1 = [[UIImageView alloc] initWithFrame: ___ ];
view1.clipsToBounds = YES;
UIImage * img = [UIImage imageNamed:@" ___ "];
view1.image = img;
view1.contentMode = UIViewContentModeScaleAspectFill;

【讨论】:

以上是关于设置 UIImageView 以显示图像的中间部分的主要内容,如果未能解决你的问题,请参考以下文章

在 UIImageView 中显示隔行(逐行)图像

如何以编程方式将 UIImageView 缩放到固定宽度和灵活高度?

界面构建器未显示要为 UIImageView 选择的图像

将大 UIImage 比例下载到 UIImageView

UIImageView 背景颜色但不显示图像

无法让 UIImageView 调整大小以适应屏幕