class LiningAnimationView: UIView {
var objects: [CALayer] = [CALayer(),CALayer(),CALayer()]
override func layoutSubviews() {
super.layoutSubviews()
self.backgroundColor = .green
self.addAnimaiton()
}
func addAnimaiton() {
let width: CGFloat = 6
let space: CGFloat = 10
let amplitude: CGFloat = (self.bounds.size.height - width)
let duration: CFTimeInterval = 1
let offset: CGFloat = (self.bounds.size.width - (CGFloat(self.objects.count) * (space + width) - space)) / 2.0
self.objects.enumerated().forEach { (index,item) in
item.removeAllAnimations()
let y = index % 2 == 0 ? 0 : amplitude
item.frame = CGRect(x: offset + (space + width) * CGFloat(index), y: y , width: width, height: width)
item.cornerRadius = width/2
item.masksToBounds = true
item.backgroundColor = rgba(68, 159, 232, 1).cgColor
if item.superlayer == nil {
self.layer.addSublayer(item)
}
// 上下跳動(dòng)的關(guān)鍵幀動(dòng)畫
let jump = CAKeyframeAnimation(keyPath: "position.y")
if index % 2 == 0 {
// 低位置
jump.values = [y, y + amplitude, y] // 在第一秀仲、二香罐、三個(gè)關(guān)鍵幀位置分別為
} else {
// 高位置
jump.values = [y, y - amplitude, y] // 在第一港粱、二寸宏、三個(gè)關(guān)鍵幀位置分別為
}
print("jump.values == \(jump.values) \(self.bounds)")
jump.keyTimes = [0, 0.5, 1] // 時(shí)間百分比
jump.calculationMode = .paced
// 動(dòng)畫組合
let group = CAAnimationGroup()
group.animations = [jump]
group.duration = duration // 動(dòng)畫總時(shí)長(zhǎng)
group.repeatCount = .infinity // 無(wú)限循環(huán)
item.add(group, forKey: nil)
}
}
}
三個(gè)小球上下跳動(dòng)核心動(dòng)畫
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門汪诉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說我怎么就攤上這事扒寄∮愎模” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵该编,是天一觀的道長(zhǎng)迄本。 經(jīng)常有香客問我,道長(zhǎng)课竣,這世上最難降的妖魔是什么嘉赎? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮于樟,結(jié)果婚禮上公条,老公的妹妹穿的比我還像新娘。我一直安慰自己隔披,他們只是感情好赃份,可當(dāng)我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著奢米,像睡著了一般抓韩。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鬓长,一...
- 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼窗声!你這毒婦竟也來(lái)了相恃?” 一聲冷哼從身側(cè)響起,我...
- 序言:老撾萬(wàn)榮一對(duì)情侶失蹤笨觅,失蹤者是張志新(化名)和其女友劉穎拦耐,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體见剩,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡杀糯,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了苍苞。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片固翰。...
- 正文 年R本政府宣布方援,位于F島的核電站没炒,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏犯戏。R本人自食惡果不足惜送火,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望先匪。 院中可真熱鬧种吸,春花似錦、人聲如沸呀非。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)岸裙。三九已至猖败,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間降允,已是汗流浹背恩闻。 一陣腳步聲響...
- 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像翅楼,于是被迫代替她去往敵國(guó)和親尉剩。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
推薦閱讀更多精彩內(nèi)容
- 【蝴蝶效應(yīng)】 蝴蝶效應(yīng):上個(gè)世紀(jì)70年代,美國(guó)一個(gè)名叫洛倫茲的氣象學(xué)家在解釋空氣系統(tǒng)理論時(shí)說褂微,亞馬遜雨林一只蝴蝶...
- 先看效果: 整個(gè)效果我是用label和view拼接起來(lái)的,笨方法 視圖前部我用的是個(gè)label來(lái)顯示文字园爷,重點(diǎn)說后...
- 在很多的開發(fā)過程中宠蚂,我們常常會(huì)需要加一些動(dòng)畫,來(lái)增加用戶體驗(yàn)童社,下面是一種圖片跳動(dòng)的簡(jiǎn)易動(dòng)畫求厕,類似于地圖定位的大頭針...
- 平時(shí)對(duì)牛逼動(dòng)畫,高級(jí)UI,都深入的不多!近日,某頭條,推了一個(gè)android技術(shù)類視頻(平時(shí)在頭條關(guān)注技術(shù)比較多)...