[Unity3D]字体垂直⾃动滚动&⿏标拖拽滑动字体滚动添加UI及组件:
    Hierarchy⾯板下右键UI添加
    Canvas(⼀级层)
      Panel(⼆级层)
        Panel下添加组件Scroll Rect
          属性:
          Content:  选择Text⽂本
          Horizontal:   左右滚动    ⾃由选择
          Vertical:    上下滚动    ⾃由选择
          Movement Type:滚动类型(⾃由选择)
                  Unrestricted:  ⽆限制的滚动,⽆回滚                  Elastic:     有限制的滚动,有回滚                  Clamped:   有限制的回滚,⽆回滚          Scroll Sensitivity:滚动的灵敏度  ⾃由设置
        Panel下添加UI→Text⽂本(三级层)
           属性:Text  在这⽂本框内输⼊要滚动的内容
                添加组件
            Content Size Fitter
            属性:
            PreferredSize:  勾选
            Panel下添加组件Mask遮罩(三级层)
                属性:Show Mask Graphic  取消勾选
           勾选        显⽰遮罩图层
           不勾选       不显⽰
           显不显⽰可⾃选
代码:
1using System.Collections;
2using System.Collections.Generic;
3using System.Threading.Tasks;
4using UnityEngine;
5using UnityEngine.UI;
6
7public class TextMoveForUp : MonoBehaviour {
8
9/* 当前时间,⽤来在Update中固定时间移动字体的,不然移动速度⽆法控制 */
10private float CurrentTime;
11
12/* 判断当前字体是否移动 */
13private bool IsMove = false;
14
15/* 字体移动速度 */
16public float FontMoveSpeed = 5;
17
18private void Awake() {float up
19/* 为了让故事背景字体从下往上播放,不然是从中间开始播放的 */
21    }
22
23
24void Update() {
25/* 调⽤字体移动⽅法 */
26        FontMoveUp();
27
28    }
29
30private void FontMoveUp() {
31
32        CurrentTime += Time.deltaTime;
33/* 限制每0.2秒移动⼀次 */
34if (CurrentTime >= 0.2f) {
35float y = ansform.localPosition.y;
37            IsMove = true;
38/* 循环播放,让字体从显⽰框上⽅消失后,在显⽰框下⽅再出现,如此循环*/ 39if (y >= 2400) {
41            }
42        }
43
44if (IsMove == true) {
45            CurrentTime = 0;
46            IsMove = false;
47        }
48
49    }
50 }
附GIF效果图

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。