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];
        
    }

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

  • 相关阅读:
    JMM内存模型
    APUE习题8.7
    整型和字符数组之间的转换(略带进制的转化)
    数据结构学习——shell排序的C语言实现
    Unix环境高级编程学习笔记——fcntl
    Unix环境高级编程学习笔记——dup
    链表
    计算机数值表示
    整数位运算相关操作
    win和linux下控制台界面中停顿X秒的方式
  • 原文地址:https://www.cnblogs.com/pengsi/p/4844599.html
Copyright © 2011-2022 走看看