0
私は多くの時間を検索し、多くの提案を適用しますが、私の問題を解決できません。ios swiftの中で左下と右下に影を設定する方法は?
左、右、下のシャドウを表示したい。しかし、迅速な3シャドウオフセットは、高さまたは幅のみを提供します。私は似たような答えを見つけました。私は右と下に左に欲しい。
を参照してください私に解決策を提案します。 ありがとう
私は多くの時間を検索し、多くの提案を適用しますが、私の問題を解決できません。ios swiftの中で左下と右下に影を設定する方法は?
左、右、下のシャドウを表示したい。しかし、迅速な3シャドウオフセットは、高さまたは幅のみを提供します。私は似たような答えを見つけました。私は右と下に左に欲しい。
を参照してください私に解決策を提案します。 ありがとう
これは、提供されているリンクとほぼ同じです。ちょうどBezierPath
を変更してください。
let block1 = UIView(frame: CGRect.init(x: 50, y: 50, width: 300, height: 300))
block1.backgroundColor = UIColor.red
block1.layer.masksToBounds = false
block1.layer.shadowOffset = CGSize(width: 0.0, height: 0.0)
block1.layer.shadowRadius = 5.0
block1.layer.shadowOpacity = 0.7
let path = UIBezierPath()
path.move(to: CGPoint(x: 0.0, y: 0.0))
// Move to center between two top points instead of bottom
path.addLine(to: CGPoint(x: block1.frame.size.width/2.0, y: block1.frame.size.height/2.0))
path.addLine(to: CGPoint(x: block1.frame.size.width, y: 0.0))
path.addLine(to: CGPoint(x: block1.frame.size.width, y: block1.frame.size.height))
path.addLine(to: CGPoint(x: 0.0, y: block1.frame.size.height))
path.close()
block1.layer.shadowPath = path.cgPath