I have the below menu style layout that mimics facebook. I would like to have a dropshadow on the left side like below however the code I am using with layer shadows makes the a
You can just inset the views bounds and set the shadow path:
UIEdgeInsets contentInsets = UIEdgeInsetsMake(10, 0, 0, 0);
CGRect shadowPathExcludingTop = UIEdgeInsetsInsetRect(self.bounds, contentInsets);
self.layer.shadowPath = [UIBezierPath bezierPathWithRect:shadowPathExcludingTop].CGPath;
I for myself would just add a UIView
containing that shadow as a subview and reposition it as soon as the view on the right side is animated. (e.g. draw that shadow with layers or core graphics)
It should help to specify a shadow path, e.g.,
CGPathRef shadowPath = [UIBezierPath bezierPathWithRect:self.navController.view.layer.bounds].CGPath;
[self.navController.view.layer setShadowPath:shadowPath]
According to the CALayer documentation, "Specifying an explicit path usually improves rendering performance."