当前位置:   article > 正文

Unity实现扇形Slider进度条加载功能 前言

uni-progress实现扇形进度条

实现方法

1.新建一个Unity工程,导入两张精灵图片,如图所示: 2.新建一个Image,修改名称为CircleBG,将工程中的精灵图片huan赋值给它,参数设置如图所示: 3.在CicleBG下新建一个Image,取名为ProgressCicle,参数设置如图所示: 4.继续在CircleBG下新建一个Image,取名为InnerCircle,将精灵图片yuan赋值给它,参数设置如图所示: 5.在CicleBG下建立一个Text,用于显示加载百分数值,调整好颜色和大小,如图所示: 6.在工程下新建CircularProgress.cs脚本,用于控制加载变化,代码如下所示: `using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;
public class CircularProgress : MonoBehaviour { //图形填充当前进度的平滑速度 [SerializeField] private float smoothSpeed = 0.5f; //获取进度图片与精度Text public Image progressCircle; public Text text; //设置目标进度与当前进度 private float targetProgress; private float currentProgress;
  1. // Use this for initialization
  2. void
  3. Start
  4. (
  5. )
  6. {
  7. targetProgress
  8. =
  9. 100.0f
  10. ;
  11. }
  12. // Update is called once per frame
  13. void
  14. Update
  15. (
  16. )
  17. {
  18. ToChange
  19. (
  20. )
  21. ;
  22. }
  23. void
  24. ToChange
  25. (
  26. )
  27. {
  28. //当前进度小于目标进度时进入分支
  29. if
  30. (
  31. currentProgress
  32. <
  33. targetProgress
  34. )
  35. {
  36. //当前进度条进度增加
  37. currentProgress
  38. +=
  39. smoothSpeed
  40. ;
  41. //进度等于大于进度值进入分支
  42. if
  43. (
  44. currentProgress
  45. >=
  46. targetProgress
  47. )
  48. {
  49. currentProgress
  50. =
  51. 100.0f
  52. ;
  53. }
  54. //更新填充圆形进度与文本显示进度
  55. progressCircle
  56. .
  57. fillAmount
  58. =
  59. currentProgress
  60. /
  61. 100
  62. ;
  63. text
  64. .
  65. text
  66. =
  67. (
  68. int
  69. )
  70. currentProgress
  71. +
  72. "%"
  73. ;
  74. }
  75. }
7.将该脚本挂载到CircleBG上,并将ProgressCirlcle及Text赋值到该脚本上,如图所示: 8.运行工程,效果如下所示,即实现了扇形Slider的效果:
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/122336
推荐阅读
相关标签
  

闽ICP备14008679号