zoukankan      html  css  js  c++  java
  • 虚线边框的实现

    1.创建类继承UIImage;

    2.创建绘制虚线的方法实现:

    + (id)imageWithSize:(CGSize)size borderColor:(UIColor *)color borderWidth:(CGFloat)borderWidth
    {
        //开启图片上下文
        UIGraphicsBeginImageContextWithOptions(size, NO, 0.0);
        //设置颜色
        [[UIColor clearColor] set];
        //取得当前上下文
        CGContextRef context = UIGraphicsGetCurrentContext();
        CGContextBeginPath(context);
        //设置属性
        CGContextSetLineWidth(context, borderWidth);
        CGContextSetStrokeColorWithColor(context, color.CGColor);
        CGFloat lengths[] = { 3, 1 };
        CGContextSetLineDash(context, 0, lengths, 1);
        CGContextMoveToPoint(context, 0.0, 0.0);
        CGContextAddLineToPoint(context, size.width, 0.0);
        CGContextAddLineToPoint(context, size.width, size.height);
        CGContextAddLineToPoint(context, 0, size.height);
        CGContextAddLineToPoint(context, 0.0, 0.0);
        //绘制
        CGContextStrokePath(context);
        //取得绘制的图片的上下文
        UIImage* image = UIGraphicsGetImageFromCurrentImageContext();
        //关闭图片上下文
        UIGraphicsEndImageContext();
        
        return image;
    }

    3.外部调用.  记住 :要用类方法调用(好粗心.....一开始做居然没用类方法调用,导致一直卡在方法不能调的情况....)

    - (void)viewDidLoad {
        [super viewDidLoad];
       
        //实现虚线边框  类方法调用
        
        UIImage *img = [CreatImage imageWithSize:CGSizeMake(200, 200) borderColor:[UIColor redColor] borderWidth:3];
        
        UIImageView *img1 = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];
        [img1 setImage:img];
        [self.view addSubview:img1];
        
    }

    我也是根据别人的博客练习来做的,学习学习..呵呵.....

  • 相关阅读:
    正则表达式预:
    cookie 二:
    Javascript之运动框架2
    cookie预:
    Javascript之链式运动框架1
    基于Azure的软件部署和开发系列沙龙
    在Docker中安装.NET Core(使用命令行工具)
    Xshell 无法连接虚拟机中的ubuntu的问题
    springboot09-redis
    springboot08-jpa-mysql
  • 原文地址:https://www.cnblogs.com/pengsi/p/4844599.html
Copyright © 2011-2022 走看看