小编Lor*_*ini的帖子

无法分配给属性:“自身”是不可变的快速错误

在我的应用程序内部,我创建了一个名为“ Positions”的协议,并扩展了UIView类以使其符合该协议,以便为UIView类添加一些属性。我用下面的代码。

import Foundation
import UIKit

protocol Positions {
    var initialPositions: [CGRect] {get set}
    var finalPositions: [CGRect] {get set}
    var positionsAreDefined: Bool {get}
}

public enum PositionsType {
    case initial
}

private var initialPositionKey: UInt = 0
private var finalPositionKey: UInt = 0

extension Positions {
    var initialPositions: [CGRect] {
        get {
            if objc_getAssociatedObject(self, &initialPositionKey) != nil {
                return objc_getAssociatedObject(self, &initialPositionKey) as! [CGRect]
            } else {
                return [] as! [CGRect]
            }

        }
        set {
            objc_setAssociatedObject(self, &initialPositionKey, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
        }
    } …
Run Code Online (Sandbox Code Playgroud)

properties self ios swift

1
推荐指数
1
解决办法
1844
查看次数

标签 统计

ios ×1

properties ×1

self ×1

swift ×1