美文网首页IOS
属性拓展

属性拓展

作者: 瑟闻风倾 | 来源:发表于2019-01-04 11:13 被阅读4次
  1. UIViewHelper:拓展UIView
//
//  UIViewHelper.swift
//  JackUChat
//
//  Created by 徐云 on 2018/12/26.
//  Copyright © 2018 Liy. All rights reserved.
//

import UIKit

extension UIView{
    
    //线宽:@IBInspectable修饰的属性,能够让属性在styoyboard的属性栏进行显示
    @IBInspectable
    var borderWidth: CGFloat {
        get {
            return self.layer.borderWidth
        }
        set {
            self.layer.borderWidth = newValue
        }
    }
    //颜色
    @IBInspectable
    var borderColor: UIColor {
        get {
            return UIColor(cgColor: self.layer.borderColor!)
        }
        set {
            self.layer.borderColor  = newValue.cgColor
        }
    }
    //圆角半径
    @IBInspectable
    var cornerRadius: CGFloat {
        get {
            return self.layer.cornerRadius
        }
        set {
            self.layer.cornerRadius = newValue
            self.layer.masksToBounds = newValue > 0
        }
    }
 

    //圆角半径
//    @IBInspectable
//    var cornerRadius: CGFloat {
//        get {
//            return layer.cornerRadius
//        }
//        set {
//            layer.cornerRadius = newValue
//        }
//    }
    
    
    //阴影:圆角,透明度,颜色,偏移
    @IBInspectable
    var shadowRadius: CGFloat {
        get {
            return layer.shadowRadius
        }
        set {
            layer.shadowRadius = newValue
        }
    }
    @IBInspectable
    var shadowOpacity: Float {
        get {
            return layer.shadowOpacity
        }
        set {
            layer.shadowOpacity = newValue
        }
    }
    @IBInspectable
    var shadowColor: UIColor? {
        get {
            return layer.shadowColor != nil ? UIColor.init(cgColor: layer.shadowColor!) : nil
        }
        set {
            layer.shadowColor = newValue?.cgColor
        }
    }
    @IBInspectable
    var shadowOffset: CGSize {
        get {
            return layer.shadowOffset
        }
        set {
            layer.shadowOffset = newValue
        }
    }
    
    
}

备注:在故事版storyboard中选中任意控件如ImageView,则在属性栏中出现拓展的相关属性,并可以直接设置.


image.png
  1. ColorHelper:拓展UIColor
//
//  ColorHelper.swift
//  JackUChat
//
//  Created by 徐云 on 2018/12/28.
//  Copyright © 2018 Liy. All rights reserved.
//

extension UIColor{
    static  var  jackColor : UIColor{
        return UIColor(red: 6/255, green: 167/255, blue: 229/255, alpha: 1)
    }
    
}

相关文章

  • 属性拓展

    UIViewHelper:拓展UIView 备注:在故事版storyboard中选中任意控件如ImageView,...

  • iOS 类拓展与分类以及关联对象

    1、类拓展是匿名的分类。2、类拓展可以为类添加属性和方法(类拓展添加的属性和方法是私有的)。3、类拓展在编译时作为...

  • iOS 类拓展的加载

    什么是类拓展呢? 类拓展就是一个匿名的分类。 类拓展 分类 类拓展的作用 给当前的类增加属性和方法。 类拓展何时加...

  • Kotlin-那些好用的标准高阶函数

    Kotlin特性总结的第二篇,上一篇我们谈了拓展函数和拓展属性。本篇我们来学习一下高阶函数。 拓展函数是对类的拓展...

  • 第一天笔记

    get:获取拓展属性的值,在获取属性值的时候, set:监听扩展属性。当扩展属性发生变化的时候,会自动调用之后,会...

  • Android 属性动画拓展(二)

    前言 通过上一篇Android 属性动画拓展(一),我们已经对知道,通过改变View的属性值,可以实现动画效果;当...

  • Android 属性动画拓展(一)

    Android 属性动画拓展(一) 前言 通过之前Android动画总结一文,我们对Android开发中的动画实现...

  • iOS - swift 拓展添加属性

    Swift不允许在extension(类扩展)中直接添加属性。 可以使用OC的关联属性(objc_set/getA...

  • Android kotlin 点击事件防重复

    利用kotlin的拓展函数和拓展属性轻而易举实现点击事件防重复:新建一个kt文件,复制以下代码: 使用方法:

  • JS第四天

    一、面向对象JS JS面向对象初始 1、属性与方法 使用属性解决循环绑定变量污染 2、类字典结构使用 结构 拓展 ...

网友评论

    本文标题:属性拓展

    本文链接:https://www.haomeiwen.com/subject/trrhrqtx.html