如何为图像添加边框而不是图像视图?

问题描述 投票:1回答:2

我正在为我的应用构建一个“照片库”。当用户点击图像时,我想要出现蓝色边框(以显示它已被选中)。由于我使用的是内容模式.scaleAspectFit,因此图像几乎不会占据整个图像视图,从而产生this。我想边框就像this(红色边框)一样在图像周围。我怎么做到这一点?

我的代码......

imageView.image = images[index]
imageView.contentMode = .scaleAspectFit
imageView.layer.borderColor = UIColor.blue.cgColor
imageView.layer.borderWidth = 5
imageView.clipsToBounds = true
ios swift uiimageview uiimage
2个回答
0
投票

使imageView的宽高比等于图像的宽高比[通过将所有图像创建为相同的宽高比]并赋予imageView屏幕宽度减去边框宽度


0
投票

使用UIImageView的功能无法实现这种效果。您需要定制一些东西,并且有很多方法可以达到您想要的效果。

一个简单的解决方案是自己进行缩放。 Aspect fit非常容易计算。 Here is an example I found

计算出缩放的图像大小后,将UIViewView的帧设置为该大小。现在你的图像将占用UIImageView的100%,你的边框将正确对齐!

© www.soinside.com 2019 - 2024. All rights reserved.