我如何才能在不带阴影的情况下绘制带有阴影的旋转UIView

问题描述

|| 我希望旋转后可以正确应用阴影。这是我的代码:
myButton.transform = CGAffineTransformMakeRotation(M_PI / 180.0 * 90.0);

myButton.layer.shadowOffset = CGSizeMake(12.0,12.0);
myButton.layer.shadowRadius = 2.0;
myButton.layer.shadowOpacity = 0.8;
myButton.layer.shadowColor = [UIColor blackColor].CGColor;
不旋转,阴影看起来很好: 但是将其旋转90°后,阴影也会随之旋转: 在不重写drawRect方法和进行低级绘制的情况下,我能做些什么?还是某些方法可以根据给定的旋转角度校正shadowOffset?手动校正90°的偏移很容易,因此这是没有选择的;) 它看起来应该像这样: 提前致谢! 在Bartosz Ciechanowski的帮助下,现在可以使用!
float angleInRadians = M_PI / 180.0 * -35.0;

myButton.transform = CGAffineTransformMakeRotation(angleInRadians);

myButton.layer.shadowOffset = [self correctedShadowOffsetForRotatedViewWithAngle:(angleInRadians) 
                                                          andInitialShadowOffset:CGSizeMake(12.0,12.0)];
myButton.layer.shadowRadius = 2.0;
myButton.layer.shadowOpacity = 0.8;
myButton.layer.shadowColor = [UIColor blackColor].CGColor;
结果是: 代替     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)