2 daffodilgirl DaffodilGirl 于 2013.05.14 10:24 提问

使用UIbezierPath画一个阴影图片

有一个阴影图像,需要画在UITableView 区域的外围。图片:

CSDN移动问答

我能获取代表矩形的UIBezierPath,但是不知道应该怎么沿着举行的周围进行重复画图。目前我只能图片充填矩形。

UIImage *patternImg = [UIImage imageNamed:@"cellShadow"];
UIColor *fill = [UIColor colorWithPatternImage:patternImg];
[fill setFill];
CGRect aSectRect = [self rectForSection:0];
UIBezierPath *aSectPath = [self createRoundedPath:aSectRect];
[aSectPath fill];

1个回答

KindAzrael
KindAzrael   2013.05.15 00:24
已采纳

可以操作view的layer的shadow****系列属性 来控制view显示的阴影效果

  //阴影颜色
  view.layer.shadowColor = [[UIColor colorWithRed:1.0 green:0 blue:0 alpha:1] CGColor];
  //阴影offset
  view.layer.shadowOffset = CGSizeMake(0, 3);
  //阴影path
  view.layer.shadowPath = [UIBezierPath bezierPathWithRect:view.bounds].CGPath;;
  //不透明度
  view.layer.shadowOpacity = 0.6;
  //阴影圆角半径
  view.layer.shadowRadius = 3;
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
iOS_使用UIBezierPath对象实现视图控件的立体阴影效果和半透明背景效果
iOS_使用UIBezierPath对象实现视图控件的立体阴影效果和半透明背景效果
使用UIBezierPath和CAShapeLayer高效为UIView添加圆角
我们在实际开发中,经常会遇到为某个view添加圆角的需求,这样出来的view的效果是比较好看的,那么平时用的最多的实现方式是什么呢?或许你也和我一样:UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 200, 40)]; btn.layer.cornerRadius = 5; btn.clipsToBou
UIBezierPath设置图片圆角
一般我们都会通过Layer设置图片圆角,这种方法在iOS9以前可能会发生离屏渲染, 比较消耗性能,比如当一个页面上有十几头像这样设置了圆角会明显感觉到卡顿。这种就是最常用的,也是最耗性能的。 imageView.layer.cornerRadius=20; imageView.layer.masksToBounds=YES; ios9.0之后对UIImag
利用CAShapeLayer和UIBezierPath实现中空透明圆,圆外填充色
CAShapeLayer和UIBezierPath结合,调用CAShapeLayer的path属性,然后再实现CAShapeLayer的fillcolor属性,便可以在UIBezierPath所绘制的路径内填充颜色。顺着这个思路,来实现一下:
Objective-C用UIBezierPath画图
UIBezierPath是Core Graphics框架关于路径的封装。我们通过设置路径即可画出我们想要的一些简单图形。如一个简单的需求:IM消息的展示框的一个“尖”,(下图是项目里的一条自定义消息类型) 还有下面这个: 这样一个不规则的图形我们只需要在规则的矩形View右边紧挨着画一个小三角即可。下面的代码使用UIBezierPath画了一个三角形:- (void)drawTriang
给圆添加一个阴影效果
我想作一圆 UIImageView ,和它的工作。下面是我用来使它的方法: [self.pic.layer setMasksToBounds:YES]; [self.pic.layer setCornerRadius:50.0]; 我想添加一些阴影到 UIImageView 。下面的代码不会添加一些阴影到我图像视图,但是,图像视图更改回方形。有人可以给我一些指针来解决这个问题吗?下面是我使用
iOS绘图-UIBezierPath的使用
UIBezierPath简单介绍 iOS系统本身提供了两套绘图的框架,即UIBezierPath 和 Core Graphics。使用UIBezierPath可以创建基于矢量的路径,此类是Core Graphics框架关于路径的封装,所以使用起来比较简单。使用此类可以定义简单的形状,如椭圆、矩形或者有多个直线和曲线段组成的形状等。UIBezierPath是CGPathRef数据类型的封装。如果
Swift 4.0 设置阴影和圆角 (UIBezierPath)
self.layer.masksToBounds = false;                  self.layer.contentsScale = UIScreen.main.scale;                  self.layer.shadowOpacity = 0.3;                  self.layer.shadowRadius =
UIBezierPath + CAShapeLayer (弧形 + 线条)
最近又再次 折腾了一下   UIBezierPath + CAShapeLayer 绘图。 图形是这样的    (灰色部分)。 然后有人建议 找美工切图,然后我感觉这个 应该可以 绘图出来, 毕竟能不切图就不切图。 图片上面的数字 看代码 /*绘图绘图,从起点到终点 一直绘下去,不要乱了顺序*/ //create path UIBezierPath *path
iOS UIBezierPath和CAShapeLayer画一条多颜色的线条
项目需要做一个有多个色值的进度条,笨办法是创建多个View,给每个View设置不同颜色,当然还是画图更高级点。本次记录利用UIBezierPath和CAShapeLayer来画一条多颜色的线条。首先我们要先知道整个线条的所有色值,和当前的结果,也就是偏高。然后创建颜色线条类,调用: NSString *resutStr = @"偏高"; NSArray *colorArr ...