Skip to content

Commit

Permalink
Fix mask Wave with parameters like `Wave(down, 20, 5)
Browse files Browse the repository at this point in the history
  • Loading branch information
JakeLin committed Feb 14, 2016
1 parent c1bd8a7 commit 5cb05d9
Showing 1 changed file with 13 additions and 10 deletions.
23 changes: 13 additions & 10 deletions IBAnimatable/MaskDesignable.swift
Expand Up @@ -28,13 +28,16 @@ public extension MaskDesignable where Self: UIView {
case .Wave:
maskWave()
}
return
}

// Star with parameter
if unwrappedMaskType.hasPrefix(MaskType.Star.rawValue) {
maskStarFromString(unwrappedMaskType)
return
else {
// Star with parameter
if unwrappedMaskType.hasPrefix(MaskType.Star.rawValue) {
maskStarFromString(unwrappedMaskType)
}
else if unwrappedMaskType.hasPrefix(MaskType.Wave.rawValue) {
// Wave with parameters
maskWaveFromString(unwrappedMaskType)
}
}
}

Expand Down Expand Up @@ -200,11 +203,11 @@ public extension MaskDesignable where Self: UIView {

private func maskWaveFromString(mask: String) {
let params = retrieveMaskParameters(mask, maskName: MaskType.Wave.rawValue).componentsSeparatedByString(",")
if params.count == 3, let unwrappedWidth = Float(params[1]), unwrappedOffset = Float(params[2]) {
let up = params[0] == "up"
maskWave(up, waveWidth: CGFloat(unwrappedWidth), waveOffset: CGFloat(unwrappedOffset))
if let unwrappedWidth = Float(params[1]), unwrappedOffset = Float(params[2]) where params.count == 3 {
let up = params[0] == "up"
maskWave(up, waveWidth: CGFloat(unwrappedWidth), waveOffset: CGFloat(unwrappedOffset))
} else {
maskWave()
maskWave()
}
}

Expand Down

0 comments on commit 5cb05d9

Please sign in to comment.