我正在为 UIButton 创建一个自定义类别类,但它没有阴影功能。那么当单击该按钮时,我应该如何在该按钮上添加阴影。
问问题
162 次
2 回答
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];
于 2013-03-08T06:50:16.457 回答
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,您可以在界面中设置状态图像。
于 2013-03-08T06:53:28.717 回答