zoukankan      html  css  js  c++  java
  • User Defined Runtime Attributes

    设置View borderWidth/cornerRadius/borderColor




    为了兼容CALayer 的KVC ,你得给CALayer增加一个分类
    CALayer+BorderColor.h

    #import <QuartzCore/QuartzCore.h>

    #import <UIKit/UIKit.h>

     

    @interface CALayer (BorderColor)

     

    @property(nonatomic, strong) UIColor *borderColorFromUIColor; 

     

    @end

     

    #import "CALayer+BorderColor.h"

    #import <objc/runtime.h>

     

    @implementation CALayer (BorderColor)

     

    - (UIColor *)borderColorFromUIColor {

        return objc_getAssociatedObject(self, @selector(borderColorFromUIColor));

    }

     

    -(void)setBorderColorFromUIColor:(UIColor *)color

    {

        objc_setAssociatedObject(self, @selector(borderColorFromUIColor), color, OBJC_ASSOCIATION_RETAIN_NONATOMIC);

        [self setBorderColorFromUI:self.borderColorFromUIColor];

    }

     

    - (void)setBorderColorFromUI:(UIColor *)color

    {

        self.borderColor = color.CGColor;

    }

     

     

    @end

     

    效果

  • 相关阅读:
    第三次作业
    第二次作业
    第一次作业
    第五次作业
    第四次作业
    第三次作业
    第二次作业
    随笔
    第五次作业
    第四次作业
  • 原文地址:https://www.cnblogs.com/joesen/p/4425393.html
Copyright © 2011-2022 走看看