CocosCreator实现文字逐个出现的打字机效果

最近在做公司游戏项目时,新手引导部分需要一个文字逐个出现的效果。
自己写了一个通用方法,感觉效果还可以。所以分享一下,欢迎讨论。
我的思路就是利用split(”)方法把字符串分割成逐个的字符存放到数组中。
设置一个空的字符串,每隔一定的时间就在这个字符串后面增加一个字符。
传入的参数分别是需要显示的Label组件,显示的文字text以及动画播放完成之后
调用的回调方法cb。
代码如下:


    typingAni: function (label, text, cb) {
        var self = this;
        var html = '';
        var arr = text.split('');
        var len = arr.length;
        var step = 0;
        self.func = function () {
            html += arr[step];
            label.string = html;
            if (++step == len) {
                self.unschedule(self.func, self);
                cb && cb();
            }
        }
        self.schedule(self.func,0.05, cc.macro.REPEAT_FOREVER, 0)

    },

猜你喜欢

转载自blog.csdn.net/a342500329a/article/details/79363154
今日推荐