如何在iPhone中删除阴影

时间:2011-08-24 21:51:55

标签: iphone cocoa-touch uiview shadow

我正在使用以编程方式从按钮制作阴影的标准方法,但我想在完成按钮后不再存在阴影。我可以将不透明度设置为0,但阴影仍然存在,如果是这样,它仍然会对系统征税。感谢

这会产生错误

tempButton.superview.layer.shadowOffset = nil;
    tempButton.superview.layer.shadowRadius = nil;
    tempButton.superview.layer.shadowOpacity = nil;

2 个答案:

答案 0 :(得分:27)

我通常会做以下事情以保证安全。

  [[tempButton layer] setShadowOpacity:0.0];
  [[tempButton layer] setShadowRadius:0.0];
  [[tempButton layer] setShadowColor:nil];

Quartz经过高度优化,如果没有必要,不会浪费任何时间进行渲染。

答案 1 :(得分:1)

我只需删除按钮,然后用相同的(但不带阴影的)按钮替换它。或者保持两者并隐藏/取消隐藏其中一个。有时创建一个新的UI对象比使用现有的UI对象更容易。