有没有办法在UITextView的边框周围放一个阴影来赋予它3D效果? textView有圆角。
我不想为textView(即文本)的内容删除阴影。仅在textView边框周围。
我需要在textView上使用clipToBounds作为圆角。
到目前为止,这是我尝试过的:
let shadowLayer = CAShapeLayer()
shadowLayer.path = UIBezierPath(roundedRect: textView.bounds, cornerRadius: 15).cgPath
shadowLayer.fillColor = UIColor.clear.cgColor
shadowLayer.shadowColor = UIColor.black.cgColor
shadowLayer.shadowPath = shadowLayer.path
shadowLayer.shadowOffset = CGSize(width: 2, height: 2)
shadowLayer.shadowOpacity = 1
shadowLayer.shadowRadius = 2
textView.layer.addSublayer(shadowLayer)
这导致:
答案 0 :(得分:1)
原因: Clips to bounds = true
和同一视图上的shadow
不能同时运行。所以要理清这一点,你必须遵循。
TextView
(说viewTextBG
)。TextView
约束:顶部底部,前导,尾部= 0 wrt。 viewTextBG
。将转角半径设为textview
和viewTextBG
textview.cornerRadius = 10
viewTextBG.cornerRadius = 10
将clipsToBounds提供给textview
和viewTextBG
textview.clipsToBounds = True
viewTextBG.clipsToBounds = false
现在为viewTextBG
提供阴影。
现在一切正常,就是这样。