您的位置:首页 > 产品设计 > UI/UE

使用UIBezierPath绘制图形

2013-08-07 11:46 274 查看
如果效果图


具体 实现方法:

在UIView的子类中重写- (void)drawRect:(CGRect)rect;方法

- (void)drawRect:(CGRect)rect
{

    CGContextRef context =UIGraphicsGetCurrentContext();

    
   CGContextClearRect(context, rect);

    

    [self.calloutBackgroundColorsetFill];

    
   CGRect bezieRect = rect;
    bezieRect.size.width -=kCalloutPinHeight;

    

    //绘制右边三角曲线 开始

    //圆角四边形
   UIBezierPath *bezier = [UIBezierPathbezierPathWithRoundedRect:bezieRect
                                                     cornerRadius:4.0];

    //添加右边三角形
    [beziermoveToPoint:CGPointMake(bezieRect.size.width,
(bezieRect.size.height /
2) - 4.0)];

   CGPoint firstLinePoint =
CGPointMake(rect.size.width, (bezieRect.size.height /2));
    [bezieraddLineToPoint:firstLinePoint];

    
   CGPoint secondLinePoint =
CGPointMake(bezieRect.size.width, (bezieRect.size.height /2)
+ 4.0);
    [bezieraddLineToPoint:secondLinePoint];

    //绘制右边三角曲线 结束
    [bezierfill];

    
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息