如何在iphone sdk中为自定义类别类添加阴影

时间:2013-03-08 06:42:49

标签: iphone uibutton

我正在为UIButton创建一个自定义类,但它没有阴影功能。那么当点击该按钮时,我应该如何在按钮上添加阴影。

2 个答案:

答案 0 :(得分:0)

如果您需要在按钮上突出显示而不仅仅是添加:

button.highlighted= YES;

如果你想要悬停类型效果的阴影,而不仅仅是将另一个图像添加到你的按钮,并将它设置为controlstatenormal到hightlighted:

//for normal tap
[button setBackgroundImage:[UIImage imageNamed:@"normal.png"] forState:UIControlStateNormal];

//for hovering effect
[button setBackgroundImage:[UIImage imageNamed:@"hover.png"] forState:UIControlStateHighlighted];

答案 1 :(得分:0)

每个按钮的状态都很少:

  enum {
   UIControlStateNormal               = 0,
   UIControlStateHighlighted          = 1 << 0,
   UIControlStateDisabled             = 1 << 1,
   UIControlStateSelected             = 1 << 2,
   UIControlStateApplication          = 0x00FF0000,
   UIControlStateReserved             = 0xFF000000
  };

您可以使用以下方式为每个州设置不同的图像:

- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state

如果您只想设置标题阴影,可以使用:

- (void)setTitleShadowColor:(UIColor *)color forState:(UIControlState)state

<强>顺便说一句

如果您使用IB,您可以在界面中设置状态图像。