swift如何在扩展中使用枚举[关闭]

问题描述 投票:-1回答:1

如何在CALayer中添加某种类型的CAMediaTimingFunction和扩展名

extension CALayer{
        enum easings {
           case easeIn01
           case easeOut01
        }


        var ease: easings{
           switch self.ease {
           case .easeIn01:
             return (CAMediaTimingFunction(controlPoints: 0.47, 0, 0.745, 0.715))
           case .easeOut01:
              return (CAMediaTimingFunction(controlPoints: 0.39, 0.575, 0.565, 1))
           }
        }
    }
swift enums calayer
1个回答
1
投票

我假设您要为常量计时功能创建“快捷方式”。

extension CALayer {
    enum Easings {
        case easeIn01
        case easeOut01

        var timing: CAMediaTimingFunction {
            switch self {
            case .easeIn01:
                return CAMediaTimingFunction(controlPoints: 0.47, 0, 0.745, 0.715)
            case .easeOut01:
                return CAMediaTimingFunction(controlPoints: 0.39, 0.575, 0.565, 1)
            }
        }
    }
}

/// To get easing
CALayer.Easings.easeIn01

/// To get timing function
CALayer.Easings.easeIn01.timing
© www.soinside.com 2019 - 2024. All rights reserved.