文字動畫

swift版


實現代碼

//? View

let newView = UIView()

//? 背景色

newView.backgroundColor = UIColor.blackColor()

//? 創建label

let myLabel = UILabel(frame: CGRectMake(0,0,300,50))

myLabel.text = "房子房子房子房子房子房子"

myLabel.textColor = UIColor.whiteColor()

//? 創建CAGradientLayer

let gradientLaber = CAGradientLayer()

//? 什么顏色不重要,但必須寫

gradientLaber.colors = [

UIColor.clearColor().colorWithAlphaComponent(0.3).CGColor,

UIColor.yellowColor().CGColor,

UIColor.yellowColor().colorWithAlphaComponent(0.3).CGColor

]

gradientLaber.locations = [(0.0),(0.0),(0.1)]

//? 設置效果方向Y同X不同水平放方向,X同Y不同垂直方向

gradientLaber.startPoint = CGPoint(x: 0, y: 0)

gradientLaber.endPoint = CGPoint(x: 1 , y: 0)

gradientLaber.frame = myLabel.frame

// 創建核心動畫動畫

let animation = CABasicAnimation(keyPath: "locations")

animation.fromValue = [0.0,0.0,0.2]

animation.toValue = [0.9,1.0,1.0]

animation.duration = 2.5

animation.removedOnCompletion = false

animation.fillMode = kCAFillModeForwards

animation.repeatCount = Float.infinity

gradientLaber.addAnimation(animation, forKey: nil)

//? 我也不懂?

myLabel.layer.mask = gradientLaber

newView.addSubview(myLabel)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容