zoukankan      html  css  js  c++  java
  • Swift-扩展

    import UIKit   导入此框架

     

    扩展的格式

      

    extension + 需要扩展的类名{

     

    }

    以下是对数据持久化UserDefaults的扩展代码

    extension UserDefaults{

        enum TestData: String,UserDefaultSettable{

            case name

            case age

       }

     

    public protocol UserDefaultSettable{

        var uniqueKey:String { get}

    }

     

    public extension UserDefaultSettable where Self: RawRepresentable, Self.RawValue == String {

        

        public func store(value: Any?){

            UserDefaults.standard.set(value, forKey: uniqueKey)

        }

        

        public var storedValue: Any? {

            return UserDefaults.standard.value(forKey: uniqueKey)

        }

     

        public var uniqueKey: String {

            return "(Self.self).(rawValue)"

        }

        

        public func store(value: Bool) {

            

        }

    //    public var storedBool: Bool {

    //        // ......

    //    }

    //    

    }

     

  • 相关阅读:
    对WM_NCHITTEST消息的了解+代码实例进行演示(消息产生消息,共24个枚举值)
    windows 下,用CreateWaitableTimer SetWaitableTimer 创建定时器(用轮询的办法保持高精度)
    YUI的模块化开发
    内存管理
    WCF从零学习之WCF概述(一)
    MVC编辑状态两个DropDownList联动
    HashMap的工作原理
    初探performance.timing API
    异步编程
    Nikola的5项依赖注入法则
  • 原文地址:https://www.cnblogs.com/lcl15/p/6479720.html
Copyright © 2011-2022 走看看