最近開發一款遊戲,涉及到血條的製作,前期上網找了挺多文章,最後總結起來應該就如下幾種實現方式:1.通過slider實現;2.通過scrollbar實現;3.控件組合,比如用控件將血條邊框和紅條組合,通過腳本控制紅條長度的縮放或位移實現動畫效果
okay,爲了省事,我選擇了通過scrollbar的方式實現
首先,我創建了這樣一個scrollbar,將他的背景透明度設爲0
然後我們來看下scrollbar的結構:
第一個是它的框,這裏可以放些圖片當背景;第二個顧名思義是滑塊的滑動範圍;第三個是滑塊,同樣可以插入圖片;
okay,現在,我們爲它插入必要的圖片,然後將scrollbar的value調至0,將Diretcion調至1,調整將滑動範圍(Sliding Area),然後將紅條,也就是Handle調整至和滑動範圍一樣大,最終效果如下:
此時調整Direction的值你會發現我們想要的基本效果出來了(值爲0時):
此時覺得還缺點什麼,對,就是紅條超出滑動範圍的部分我們不想讓它顯示,這很簡單,在Sliding Area下創建一個和它等大小的panel,將它的透明度設爲1(記住一定是1),然後將Handel拖到panel下,於是Scrollbar的結構變成這樣:
最後,爲panel添加一個遮罩(Mask),我們想要的血條效果就出來了:
在腳本里,我們只需要控制scrollbar的Diretcion值就行了(範圍爲0-1)