这是我的 UILabel 代码
descriptionText.layer.cornerRadius = 8
descriptionText.layer.borderColor = UIColor.lightGray.cgColor
descriptionText.layer.borderWidth = 2
descriptionText.text = ""
descriptionText.layer.shadowOffset = CGSize(width: -10, height: -10)
descriptionText.layer.shadowRadius = -5.0
descriptionText.backgroundColor = .white
descriptionText.textColor = .black
descriptionText.numberOfLines = 0
descriptionText.lineBreakMode = .byWordWrapping
为什么角不透明或如何使边界外的部分透明
提前致谢
最佳答案
您需要通过将标签上的 .clipsToBounds
设置为 true 来隐藏 cornerRadius 之外的所有内容。问题是如果你这样做你会失去阴影,因为这也在边界之外。试试这个:
将标签放在容器 View 内,将标签限制在容器边缘,并为其创建导出。然后试试下面的代码:
containerView.borderColor = UIColor.lightGray.cgColor
containerView.layer.borderColor = UIColor.lightGray.cgColor
containerView.layer.borderWidth = 2
containerView.layer.shadowOffset = CGSize(width: -10, height: -10)
containerView.layer.shadowRadius = -5.0
containerView.backgroundColor = UIColor.clear
descriptionText.text = "Testing"
descriptionText.cornerRadius = 8
descriptionText.clipsToBounds = true // or descriptionText.layer.masksToBounds = true
descriptionText.backgroundColor = .white
descriptionText.textColor = .black
descriptionText.numberOfLines = 0
descriptionText.lineBreakMode = .byWordWrapping
关于swift - 带有边框和背景问题的 UILabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50881662/