回歸
Scratch語言雖然簡單卻能做出豐富的應(yīng)用,下面我們來做一本電子相冊,可以前后翻頁,翻頁的過程中有特效。
首先我們需要用到“特效”方面的代碼,從“可以前后翻頁”這個(gè)需求可知還要與用戶交互。(還可以添加隔一段時(shí)間自動(dòng)后翻的功能)。
程序角色共兩類:一是兩個(gè)按鍵,左箭頭和右箭頭(如果用鍵盤的左右鍵控制,不設(shè)置也行)。
圖2 右箭頭代碼
二是相冊照片,數(shù)量最好是3張以上。
還要設(shè)置一個(gè)變量:張數(shù)。
1. 翻頁箭頭代碼分析
當(dāng)綠旗被點(diǎn)擊時(shí),顯示第一張照片,當(dāng)右箭頭或→鍵被點(diǎn)擊時(shí),先判斷目前是第幾張,然后把“張數(shù)”變量設(shè)置為下一張的張數(shù),并廣播。下一張圖片收到廣播后會(huì)用特效形式顯示。當(dāng)張數(shù)是最后一張時(shí)說“已經(jīng)是最后一張了”。(如圖2)
左箭頭的代碼與右箭頭的代碼相似,復(fù)制代碼并稍微改編,點(diǎn)擊時(shí)張數(shù)變?yōu)樯弦粡埣纯伞?/p>
特別要注意“如果…那么”語句的順序,以免出現(xiàn)Bug。
2. 照片代碼分析
1) 每張照片單獨(dú)作為角色,對其單獨(dú)編程。
2) 對于第一張圖片,當(dāng)綠旗被點(diǎn)擊,廣播“第一張”。
3) 當(dāng)接收到“第一張”時(shí),執(zhí)行顯示特效。特效通過重復(fù)體現(xiàn)出漸變效果。具體循環(huán)次數(shù)和等待時(shí)間要根據(jù)具體效果調(diào)整。
4) 點(diǎn)擊翻頁鍵進(jìn)行廣播“第二張”,當(dāng)接收到“第二張”時(shí)將執(zhí)行虛像特效逐漸隱藏。
5) 第二張圖收到“第一張”和“第三張”時(shí)要執(zhí)行虛像特效。收到“第二張”時(shí)執(zhí)行顯示特效。(如圖3)
圖3 可以選擇的特效
6) 除了幾種內(nèi)置特效外,還可以用圖片運(yùn)動(dòng)切入的方式自制特效。(如圖4)
圖4 圖片運(yùn)動(dòng)也是特效
3. 小結(jié)
實(shí)現(xiàn)電子相冊功能還可以有不同的解決方法,比如引入隨機(jī)變量豐富變化效果。