Проблема в том, что вы рисуете тень только один раз, когда viewcontroller загружен в память, в viewDidLoad()
. Вам нужно вызывать dropShadow
каждый раз, когда вы перерисовываете представление, с которым он связан.
Этого можно добиться, позвонив dropShadow
после изменения кадра shadow
.
@IBAction func btnActn(_ sender: Any) {
self.shadow.frame = CGRect(x: 50,y: 50,width: 150,height: 50)
self.shadow.dropShadow()
}