自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

HarmonyOS - 實(shí)現(xiàn)電池充電動畫效果

系統(tǒng) OpenHarmony
最近在學(xué)習(xí)HarmonyOS開發(fā)文檔,發(fā)現(xiàn)transform樣式動畫感覺很有趣,用現(xiàn)有的方法寫一個(gè)會動的充電效果。

??想了解更多內(nèi)容,請?jiān)L問:??

??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??

??https://ost.51cto.com??

前言

最近在學(xué)習(xí)HarmonyOS開發(fā)文檔,發(fā)現(xiàn)transform樣式動畫感覺很有趣,用現(xiàn)有的方法寫一個(gè)會動的充電效果。

實(shí)現(xiàn)過程

一、 繪制電池輪廓

首先我們使用css畫電池,繪制一個(gè)長方形需要給這個(gè)正方形四個(gè)角增加一點(diǎn)點(diǎn)的弧度,再給電池畫一個(gè)頭部,只有一個(gè)電池的輪廓就出來了,我在里面增添了一點(diǎn)顏色方便后面觀察。

首先繪制一個(gè)電池。

2.增加個(gè)div來實(shí)現(xiàn)動畫效果,這個(gè)我打算用蒙版來處理,蒙版不需要增加太多細(xì)節(jié)寬高和藍(lán)色div一樣就行,然后通過overflow: hidden來實(shí)現(xiàn)蒙版效果,接下來就是讓白色div動起來就行了。

<img src=“./電池遮罩.png” alt=“電池遮罩” style=“zoom: 67%;” />。

二、電池動畫效果

1.需要使電池出現(xiàn)一個(gè)充電的效果,這時(shí)候就需要使用一個(gè)讓電池電量上升的一個(gè)效果,這個(gè)用平移動畫就夠了,如果加蒙版屬性的話會更好一點(diǎn)。

.mask2 {
position: absolute;
height: 220px;
width: 140px;
left: 50%;
transform: translate(-50%, 50%);
border-radius: 15px 15px 5px 5px;
background: linear-gradient(#7abcff, #2196F3);
overflow: hidden;
}

電池漸變。

background: linear-gradient(#7abcff, #2196F3);

蒙版效果。

overflow: hidden;
.mask3 {
position: absolute;
width: 150px;
height: 220px;
bottom: 140px;
left: 50%;
transform: translate(-50%, -80);
z-index: 1;
animation: down 6s fast-out-linear-in infinite;
background-color: #ffffff;
}

電池平移動畫。

animation: down 6s fast-out-linear-in infinite;
/* css彈跳*/
@keyframes down {
/* 停止 */
0%{
transform: translate(0px,200px);
}
/* 上升 */
10%{
transform: translate(0px,180px);
}
/* 上升 */
20%{
transform: translate(0px,160px);
}
/* 上升 */
30%{
transform: translate(0px,140px);
}
/* 上升 */
40%{
transform: translate(0px,120px);
}
/* 上升 */
50%{
transform: translate(0px,100px);
}
/* 上升 */
60%{
transform: translate(0px,80px);
}
/* 上升 */
70%{
transform: translate(0px,60px);
}
/* 上升 */
80%{
transform: translate(0px,40px);
}
/* 上升 */
90%{
transform: translate(0px,20px);
}
/* 起始位 */
100%{
transform: translate(0px,0px);
}
}

百分百給的越多動畫就越細(xì)膩。

三、拓展1

1.如果需要使電池充電時(shí)進(jìn)行旋轉(zhuǎn)也是可以的,只需要把平移效果換成旋轉(zhuǎn)就可以了。

.mask3 {
position: absolute;
width: 150px;
height: 150px;
bottom: 140px;
left: 50%;
transform: translate(-50%, 0);
z-index: 1;
animation: rotate 4s infinite;
border-radius: 70px 63px 60px 66px;
background-color: #ffffff;
}

旋轉(zhuǎn)動畫。

animation: rotate 4s infinite;
/* css旋轉(zhuǎn)*/
@keyframes rotate {
from {
transform: rotate(0deg)
}
to {
transform: rotate(360deg);
}
}

四、拓展2

也可以通過添加按鈕來增加可改變的顏色樣式,首先需要把css中的顏色樣式給移到j(luò)s中這樣方便后面的切換,然后在js中寫入需要替換的電池顏色樣式。

<div class="mask1">
<div class="mask4"></div>
<div class="mask2" value="{{qr_value}}" type="{{qr_type}}"
style="background-color: {{gradualChange}};">
<div class="mask3" value="{{qr_value}}" type="{{qr_type}}"
style="background-color: {{baseColor}};" ></div>
</div>
</div>
<div>
<text class="txt">電池加載色</text>
<select onchange="loadingColor">
<option for="{{load}}" value="{{$item}}">{{$item}}</option>
</select>
</div>
<text class="txt">電池剩余色</text>
<select onchange="remainingColor">
<option for="{{remaining}}" value="{{$item}}">{{$item}}</option>
</select>
data: {    
baseColor: '#f0ffff',
gradualChange: '#87ceeb',
remaining: ['#87ceeb','#fa8072','#da70d6','#80ff00ff','#2196F3'],
load: ['#f0ffff','#ffffe0','#d8bfd8']
},

最終的效果

總結(jié)

這些還只是鴻蒙組件庫中動畫樣式里的一小部分,如果再使用旋轉(zhuǎn)加平移屬性就能實(shí)現(xiàn)更加炫酷的動畫效果,能夠帶來更好的視覺體驗(yàn),組件庫中還有著許多有趣的組件實(shí)例和詳細(xì)的使用方法,掌握這些組件的使用可以使我們更好的了解和參與鴻蒙。

??想了解更多內(nèi)容,請?jiān)L問:??

??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??

??https://ost.51cto.com??

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2022-07-20 15:24:47

ArkUI動畫效果項(xiàng)目開發(fā)

2011-07-08 10:15:15

IPhone 動畫

2022-12-27 17:57:03

開源汽車充電

2017-02-06 13:00:49

Android翻轉(zhuǎn)卡片動畫效果

2022-07-28 14:12:31

動畫API鴻蒙

2024-02-02 10:41:01

人工智能電動汽車

2012-06-04 14:47:42

HTML5

2022-10-26 09:28:55

物聯(lián)網(wǎng)電動汽車

2022-10-26 15:04:39

物聯(lián)網(wǎng)電動汽車充電運(yùn)營商

2011-07-22 18:20:04

IOS View 動畫

2022-12-05 07:44:59

2022-12-19 07:40:57

2023-03-30 12:37:19

2023-06-13 10:08:21

汽車設(shè)計(jì)

2017-06-04 14:42:39

智能公路太陽能智能化

2021-11-05 22:01:31

手機(jī)電池充電

2018-03-15 15:44:30

iPhone電池老化無線充電

2023-09-15 08:00:00

2010-03-12 13:14:40

WiFi無線信號

2011-05-30 13:23:11

Android 動畫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號