zoukankan      html  css  js  c++  java
  • 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();

        }

    }

  • 相关阅读:
    Java线程专题 3:java内存模型
    Java线程专题 2:synchronized理解
    Java线程专题 1:线程创建
    设计模式七大原则
    JVM 运行时数据区
    css_selector定位,比xpath速度快,语法简洁
    xpath绝对定位和相对定位
    selenium多种定位
    操作浏览器基本元素(不定时更新)
    爬取网页图片并且下载(1)
  • 原文地址:https://www.cnblogs.com/chenjie-ios/p/4709818.html
Copyright © 2011-2022 走看看