iOS给一个view添加虚线边框

/**

 * 此方法作用:给一个矩形视图增加四条矩形虚线边框

 *

 * parma:superView:需要加载的父视图

 */

#define padding 20

 

- (void)addDottedLineFromImageView:(UIView *)superView{

    CGFloat w = superView.frame.size.width;

    CGFloat h = superView.frame.size.height;

    

//创建四个imageView作边框

    for (NSInteger i = 0; i<4; i++) {

        UIImageView *imageView = [[UIImageView alloc] init];

   imageView.backgroundColor = [UIColor clearColor];

        if (i == 0) {

            imageView.frame = CGRectMake(0, 0, w, padding);

        }else if (i == 1){

            imageView.frame = CGRectMake(0, 0, padding, h);

        }else if (i == 2){

            imageView.frame = CGRectMake(0, h - padding, w, padding);

        }else if (i == 3){

            imageView.frame = CGRectMake(w - padding, 0, padding, h);

        }

        [superView addSubview:imageView];

        

        UIGraphicsBeginImageContext(imageView.frame.size);   //开始画线

        [imageView.image drawInRect:CGRectMake(0, 0, imageView.frame.size.width, imageView.frame.size.height)];

        CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);  //设置线条终点形状

        

        CGFloat lengths[] = {10,5};

        CGContextRef line = UIGraphicsGetCurrentContext();

        CGContextSetStrokeColorWithColor(line, [UIColor blackColor].CGColor);

        CGContextSetLineDash(line, 0, lengths, 2);  //画虚线 

        CGContextMoveToPoint(line, 0, 0);    //开始画线

        

        if (i == 0) {

            CGContextAddLineToPoint(line, w - padding, 0);

        }else if (i == 1){

            CGContextAddLineToPoint(line, 0, w);

        }else if (i == 2){

            CGContextMoveToPoint(line, 0, padding);

            CGContextAddLineToPoint(line, w, padding);

        }else if (i == 3){

            CGContextMoveToPoint(line, padding, 0);

            CGContextAddLineToPoint(line, padding, w);

        }

        

        CGContextStrokePath(line);

        imageView.image = UIGraphicsGetImageFromCurrentImageContext();

    }

}

 

posted @ 2015-08-07 09:23  笨笨编程  阅读(3925)  评论(0编辑  收藏  举报