Unity3D -- (UGUI)Scrollbar
2016-01-05 16:10
716 查看
Unity3D中Scrollbar控件(滚动条控件)分为水平滚动条(HorizontalScrollbar)和垂直滚动条(VerticalScrollbar)。其用法也是一样的。官方简介网址:file:///Applications/Unity/Unity.app/Contents/Documentation/en/Manual/script-Scrollbar.html
我在实际项目中使用Scrollbar做视频播放的进度条,感觉使用起来还不错。创建一个Scrollbar控件,包括了下图部分。一个Scrollbar父组件,一个Sliding Area滑动区域,一个可以滑动的Handle。
滑动条长相
代码实现:
void Start ()
{
scrollbar = GetComponentInChildren<Scrollbar> ();
}
public void SetScrollbarProgress(float timer = 0, int count = 0)
{
if (timer == 0) {
m_Playing = true;
} else {
m_Playing = false;
scrollbar.value = 0;
m_TimerCount = count * timer * 1.7f;
}
}
void LateUpdate()
{
if (m_Playing) {
scrollbar.value += Time.deltaTime / m_TimerCount;
}
}
外部调用SetScrollbarProgress传进两个参数,一个是单步时间,一个是总步数,利用这两项得到总时间,在LateUpdate中让scrollbar的value值增加,每次增加Time.deltaTime / m_TimerCount可以让进度刚好符合需要的时间。
我在实际项目中使用Scrollbar做视频播放的进度条,感觉使用起来还不错。创建一个Scrollbar控件,包括了下图部分。一个Scrollbar父组件,一个Sliding Area滑动区域,一个可以滑动的Handle。
滑动条长相
Interactable | 是否接受输入 |
Transition | 点击Handle过渡方式,有颜色过渡,图片过渡,动画过渡。 |
Navigation | 控制序列的属性 |
Handle Rect | handle控件 |
Direction | 滑动方向 |
Value | 滑动条初始值,范围0-1 |
Size | handle部分的大小,范围0-1 |
Number Of Steps | 通过滚动条允许不同的滚动位置的数字 |
void Start ()
{
scrollbar = GetComponentInChildren<Scrollbar> ();
}
public void SetScrollbarProgress(float timer = 0, int count = 0)
{
if (timer == 0) {
m_Playing = true;
} else {
m_Playing = false;
scrollbar.value = 0;
m_TimerCount = count * timer * 1.7f;
}
}
void LateUpdate()
{
if (m_Playing) {
scrollbar.value += Time.deltaTime / m_TimerCount;
}
}
外部调用SetScrollbarProgress传进两个参数,一个是单步时间,一个是总步数,利用这两项得到总时间,在LateUpdate中让scrollbar的value值增加,每次增加Time.deltaTime / m_TimerCount可以让进度刚好符合需要的时间。
--Rocky
相关文章推荐
- 关于unity的一些内容
- Unity3D教程:编辑器编程
- Unity 新UI事件系统(EventSystem) Demo
- Unity中Oculus分屏相机和普通相机一键切换
- Unity中Oculus分屏相机和普通相机一键切换
- Unity+NGUI性能优化方法总结(转) ------2016.1.5
- 反编译Unity3D游戏--Android版
- C# 宏定义 - 在unity里面使用
- Unity3d中的属性(Attributes)整理
- 每天一点小知识001--unity在ios系统的文件读取
- unity, GUIStyle and Skin
- Unity-插件-NGUI-常用UI界面功能(1)
- unity学习笔记2
- Unity3D学习笔记01
- Unity5 与Web详细讲解
- Unity2S 愤怒的小鸟教程
- Unity-AssetBundle爬坑记
- Unity 2D Arkanoid Tutorial(打砖块教程)
- Unity 2D Pong Game
- Unity 2D Flappy Bird Tutorial