首页 > 网站 > 建站经验 > 正文

ios 代码控制 出现控件的阴影

2019-11-02 14:49:31
字体:
来源:转载
供稿:网友

  只需要把对应的空间,进行重写。我开发的主要针对UIButton这个控件

  .h文件,如下:

  #import

  #import

  @interface ShadowButton : UIButton

  {

  UIColor *shadowColor;

  }

  @property(nonatomic , strong)UIColor *shadowColor;

  @end

  .m文件,如下

  #import "ShadowButton.h"

  @implementation ShadowButton

  @synthesize shadowColor;

  -(void)setProperty

  {

  self.imageEdgeInsets = UIEdgeInsetsMake(0, -1, 3, 2);

  self.shadowColor = [UIColor grayColor];

  }

  - (id)initWithFrame:(CGRect)frame

  {

  self = [super initWithFrame:frame];

  if (self) {

  // Initialization code

  }

  return self;

  }

  -(id)initWithCoder:(NSCoder *)aDecoder

  {

  self = [super initWithCoder:aDecoder];

  if (self) {

  [self setProperty];

  }

  return self;

  }

  // Only override drawRect: if you perform custom drawing.

  // An empty implementation adversely affects performance during animation.

  - (void)drawRect:(CGRect)rect

  {

  // Drawing code

  CGContextRef context = UIG

搞笑段子[www.62-6.com/1/gaoxiaoduanzi/]
raphicsGetCurrentContext();

  CGRect frame = rect;

  UIEdgeInsets insets = self.imageEdgeInsets;

  frame.origin.x +=insets.left;

  frame.origin.y +=insets.top;

  frame.size.width -= (insets.left + insets.right);

  frame.size.height -= (insets.top + insets.bottom);

  if (shadowColor) {

  CGContextSetShadowWithColor(context, CGSizeMake(insets.right, insets.bottom), 10, [shadowColor CGColor]);

  }

  UIImage *image = self.imageView.image;

  [image drawInRect:frame];

  }

  @end

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表