如何在UIImage后面加上UIView的边框?

时间:2018-01-30 14:11:54

标签: ios swift uiview uiimage

我是Swift的新手,我在尝试开发一个小应用程序时面临一个问题,我真的希望有人能帮助我。

基本上,我在UIView中有一个UIImage,我想将UIView的边框发送到后面(见下图)

border in front of image

所以,我给UIView一个边框,它通过我的图像。我的问题是:

如何将UIView的边框置于UIImage后面?

注意:如果这是一个重复的问题,我道歉,我几个小时都在寻找答案,但无法找到我需要的答案。

祝你好运!

以下是我的图片代码:

speakerImage.layer.cornerRadius = speakerImage.frame.size.width / 2;
speakerImage.clipsToBounds = true;
speakerImage.layer.zPosition = 1

这是我的视图代码:

speakerContentView.layer.cornerRadius = 5
speakerContentView.layer.borderWidth = 1
speakerContentView.layer.borderColor = UIColor.gray.cgColor
speakerContentView.layer.shadowColor = UIColor.gray.cgColor
speakerContentView.layer.shadowOpacity = 0.7
speakerContentView.layer.shadowOffset = CGSize(width: 0, height: 3)
speakerContentView.layer.zPosition = -1

2 个答案:

答案 0 :(得分:3)

这可能对你有所帮助!!

  • 将图像移到当前(speakerContentView)视图之外,并将其设置在更高的层次结构中,以便它可以位于前面位置。
  • 将图像的垂直中心Y设置为等于当前(speakerContentView)视图Y

看看这张图片:

enter image description here

可能不是标准方式,但会解决您的问题。

答案 1 :(得分:1)

您应该在图片下方添加与超级视图相同大小的子视图,并为其指定边框/阴影而不是其超级视图。

view hierarchy