1.建立3个Sprite,层级关系如图:(若需要在进度条上显示进度百分数的话要建立Label_Value)
2.添加进度条的前后图片:分别设置Sprite_ForeGround和Sprite_BackGround的Atlas和Sprite;注意调整2个Sprite的Depth使得Sprite_ForeGround在Sprite_BackGround之前;
3.给Sprite_ProgressBar添加脚本UIProgressBar,将Sprite_ForeGround和Sprite_BackGround分别拖到UIProgressBar中的Foreground和Background,此时手动改变UIProgress的Value,可看到效果了。
4.通过Label显示进度百分比
把Label_Value拖到Sprite_Progress的UIProgressBar的OnValueChange的Notify,然后看到Method属性并设置为UILabel.SetCurrentPercent;
将Label_Value的UILabel的Text填写为0%(一般我们看到的进度条不是从0%开始的吗?)
此时手动改变Sprite_ProgressBar的UIProgress的Value,可看到效果了。
5.效果图:
6.若要动态改变sprite_ProgressBar.GetComponent<UIProgressBar>().value
代码:
<span style="font-size:14px;"><pre name="code" class="csharp">void Update()
{
//1秒时间内value由0变到1;
sprite_ProgressBar.GetComponent<UIProgressBar>().value = Mathf.Lerp(0, 1, Time.time);
}</span>