2017-10-06 7 views
0

私は多くの時間を検索し、多くの提案を適用しますが、私の問題を解決できません。ios swiftの中で左下と右下に影を設定する方法は?

左、右、下のシャドウを表示したい。しかし、迅速な3シャドウオフセットは、高さまたは幅のみを提供します。私は似たような答えを見つけました。私は右と下に左に欲しい。

  1. リンクlittle similar answere

を参照してください私に解決策を提案します。 ありがとう

答えて

0

これは、提供されているリンクとほぼ同じです。ちょうど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 
関連する問題