如何在不拉伸它的情况下在UIView中填充背景图像

时间:2015-05-26 05:02:55

标签: ios swift uiview

我正在尝试使用动画.gif设置UIView的背景图像,我正在拉动Giphy。

我遇到的问题是UIView正在拉伸图像。我想填充背景,因此高度为100%并使其居中。因此.gif的左右两侧将被切断 - 但图像将在屏幕上居中并且不会拉伸。

Here's现在的截图。

你可以看到它的填充高度正确,但它缩小了图像的宽度以匹配UIView尺寸,使其看起来很拉伸。

以下是我现在的代码:

try catch

任何想法

2 个答案:

答案 0 :(得分:3)

我认为您应该将gifView的内容模式设置为Aspect Fit,这样做不会拉伸图像,并且会在水平/垂直方向上完全填充至少一个长度。

尝试设置

gifView.contentMode = UIViewContentMode.ScaleAspectFit

此外,您可以scale上使用AspectFill gifView作为

gifView.contentMode = UIViewContentMode.ScaleAspectFill

ScaleAspectFill将填充整个gifView的框架,但也会保持宽高比,这样做会使您的图片看起来不会被拉伸,但可能会发生水平或垂直内容都会出现在外面框架(你可以剪辑)。

答案 1 :(得分:1)

您肯定在寻找视图的contentMode ScaleAspectFit。只需添加一行gifView.contentMode=UIViewContentMode.ScaleAspectFit

即可