美文网首页
Swift 中extension 设置属性

Swift 中extension 设置属性

作者: 大也 | 来源:发表于2021-08-16 11:29 被阅读0次
    extension ADAlertController: ADAlertControllerPriorityQueueProtocol {
       
       private struct AssociatedKeys {
           static var alertPriority: Void?
           static var autoHidenWhenInsertSamePriority: Void?
       }
           
       public var alertPriority: ADAlertPriority? {
           get {
               let alertPriority = objc_getAssociatedObject(self, &AssociatedKeys.alertPriority) as? ADAlertPriority
               return alertPriority ?? ADAlertPriorityDefault
           }
           set {
               objc_setAssociatedObject(self, &AssociatedKeys.alertPriority, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
           }
       }
       
       public var autoHidenWhenInsertSamePriority: Bool? {
           get {
               return objc_getAssociatedObject(self, &AssociatedKeys.autoHidenWhenInsertSamePriority) as? Bool ?? false
           }
           set {
               objc_setAssociatedObject(self, &AssociatedKeys.autoHidenWhenInsertSamePriority, newValue, .OBJC_ASSOCIATION_ASSIGN)
           }
       }
    }
    

    相关文章

      网友评论

          本文标题:Swift 中extension 设置属性

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