精华内容
下载资源
问答
  • Android属性动画弹幕,自定义弹幕布局
  • Android属性动画弹幕,自定义弹幕布局 github地址 可配置项: private int displayLines = 4;//弹幕行数 private boolean isRepeat = true;//是否循环显示 private long animationTime = 6 * 1000L; //动画时间 ...

    Android属性动画弹幕,自定义弹幕布局

    github地址

    可配置项:

    private int displayLines = 4;//弹幕行数
    private boolean isRepeat = true;//是否循环显示
    private long animationTime = 6 * 1000L; //动画时间
    private long distanceTime = 3 * 1000L; //两条弹幕间隔时间
    private boolean isRandomDistanTime = true; //是否随机间隔时间
    

    这里写图片描述

    展开全文
  • 在某些场景下需要用到弹幕,例如视屏直播网站等等需要用到弹幕,视屏直播等平台会用到输入发送弹幕,这个可以参考小程序的视屏播放部分video传送门,在video组件中直接有弹幕配置方式,详细参考官方文档,这里不做...

    1.背景:

    背景一:

    在某些场景下需要用到弹幕,例如视屏直播网站等等需要用到弹幕,视屏直播等平台会用到输入发送弹幕,这个可以参考小程序的视屏播放部分video传送门,在video组件中直接有弹幕配置方式,详细参考官方文档,这里不做赘述。

    场景二:

    有些场景只需要播放弹幕(例如在重大节日里,需要烘托节日气氛,后台填写几条,然后接口返给前端,前端在屏幕固定范围内播放即可,这里无需用户手动输入)。后文只围绕这种情况做说明。

    2.思路:

    思路一:

    此时就只是一个图片展示,不涉及video部分(想偷懒,就没法偷懒了,只能自己实现了)。通过setinterval计时器来实现,没问题,当然可以,每条弹幕开通一个计时器,播放结束后把计时器清除。这种思路简单清晰,会js的都能想到,实现起来就不是那么好了。(须考虑:1.计时器创建;2.计时器清除;3.当页面弹幕比较多时,页面有好多计时器在跑,不利于性能考虑),所以我认为这种方式不怎么友好。

    思路二:

    因为只是弹幕播放,从一个方向往另一个方向运动即可,方式很多呀(例如:1.通过left值;2.通过translatex来控制),此时只需要控制其位置变化,通过css的animate动画来实现即可,css的方式不会用到计时器,动画循环往复即可。

    3.代码实现:(我的项目中用的百分比布局的方式,所以都通过了计算,包括字体大小都计算后获得)

    3.1 代码实现思路

    3.1.1 创建一个播放的可视区域(可视区域固定高度,宽度百分百),即弹幕最外层容器;

    3.1.2 每一条弹幕的播放时间,延迟播放时间,距离顶部定位的top距离,通过js生成计算所得,在结构中渲染展示;

    3.1.3 动画播放,从左往右(left:100%到left:-100%)运动;

    3.2wxml

    <view class='danmu' wx:if="{{danmu}}" style='background-color:rgba(0,0,0,0.5)'>
      <view wx:for="{{danmu}}" class='danmu-li rowAndColCenter' style="top:{{ item.top }}%;border-radius: {{window_h*0.18601*0.16}}px;font-size: {{window_h*0.18601*0.12}}px; animation: dmAnimation {{item.time}}s linear {{ index*3 }}s infinite;">{{item.title}}</view>
    </view>

    3.3css

    .danmu {
      width: 100%;
      height: 18.601%;
      position: absolute;
      bottom: 0;
      left: 0;
      overflow: hidden;
    }
    
    .danmu-li {
      height: 17%;
      padding: 0 20rpx;
      color: #fff;
      background-color: rgba(0, 0, 0, 0.5);
      position: absolute;
      left: 100%;
      top: 0;
      word-break: keep-all;
      white-space: nowrap;
    }
    
    /* 弹幕动画 */
    
    @keyframes dmAnimation {
      from {
        left: 100%;
      }
    
      to {
        left: -100%;
      }
    }

    3.4js

    Page({
      /**
       * 页面的初始数据
       */
      data: {
        danmu: []
      },
      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function(options) {
        var that = this;
        // 系统宽高
        wx.getSystemInfo({
          success(res) {
            that.setData({
              window_w: res.windowWidth,
              window_h: res.windowHeight
            }, () => {
              var infor = [
                "用霸王防脱生发",
                "幸运的我中奖了!",
                "这么多奖品好多啊",
                "美好的活动真棒",
                "多好哇一二三四五六七八九十",
                "不怕秃"
              ];
              var danmu = []
              for (var i = 0; i < infor.length; i++) {
                const time = Math.floor(Math.random() * 10);
                const _time = time < 6 ? 6 + i : time + i;
                const top = Math.floor(Math.random() * 80) + 2;
                danmu.push({
                  title: infor[i],
                  top: top,
                  time: _time,
                });
              }
              that.setData({
                danmu: danmu
              });
            });
          }
        });
      },
    })

    3.5 效果

    4.说明:

    4.1 推荐博客:https://blog.csdn.net/vinos_toby/article/details/90669260

    4.2 animate文档:https://www.w3school.com.cn/cssref/pr_animation.asp

    4.3 资源下载:https://www.duoguyu.com/smart/14.html 

    4.4 百度云下载:https://pan.baidu.com/s/1YtsI3vh-SXOS5CoTOf66VQ  (提取码:q21u)

    4.5 转载地址:https://blog.csdn.net/vinos_toby/article/details/90669260

    4.6 仅做学习笔记使用,如果有侵权问题请联系博主删除。

    展开全文
  • 自定义弹幕动画

    2016-09-19 21:52:59
    自定义弹幕动画
  • Android 动画实现弹幕效果 弹幕库可以用bilibili的弹幕库实现,但是此文不是 原理是采用 ObjectAnimator 移动View做出效果 ObjectAnimator.ofFloat(mDanmuLayout002, "translationX", SCREEN_WIDTH, -SCREEN_WIDTH) ...

    Android 动画实现弹幕效果

    弹幕库可以用bilibili的弹幕库实现,但是此文不是

    原理是采用 ObjectAnimator 移动View做出效果

    ObjectAnimator.ofFloat(mDanmuLayout002, "translationX", SCREEN_WIDTH, -SCREEN_WIDTH)
    

    核心代码就这一块

    /**
     * 初始化弹幕控件
     */
    private fun initDanmakuView() {
    
        mStartBtn.setOnClickListener {
            startDanMu()
        }
        mStopBtn.setOnClickListener {
            stopDanMu()
        }
        //
        mDanmu001Listener = object : MainAnimListener() {
            override fun onAnimationRepeat(animator: Animator) {
                super.onAnimationRepeat(animator)
                setDanmuContent(mDanmuLayout001, mDanmuTv001)
            }
        }
    
        mDanmu002Listener = object : MainAnimListener() {
            override fun onAnimationRepeat(animator: Animator) {
                super.onAnimationRepeat(animator)
                setDanmuContent(mDanmuLayout002, mDanmuTv002)
            }
        }
    
    
        mDanmu003Listener = object : MainAnimListener() {
            override fun onAnimationRepeat(animator: Animator) {
                super.onAnimationRepeat(animator)
                setDanmuContent(mDanmuLayout003, mDanmuTv003)
            }
        }
        //
        setDanmuContent(mDanmuLayout001, mDanmuTv001)
        setDanmuContent(mDanmuLayout002, mDanmuTv002)
        setDanmuContent(mDanmuLayout003, mDanmuTv003)
        //
        mAnim001 =
            ObjectAnimator.ofFloat(mDanmuLayout001, "translationX", SCREEN_WIDTH, -SCREEN_WIDTH)
                .apply {
                    duration = RandomUtil.getNum(12_000, 20_000).toLong()
                    repeatMode = ValueAnimator.RESTART
                    repeatCount = ValueAnimator.INFINITE
                    addListener(mDanmu001Listener)
                }
        mAnim002 =
            ObjectAnimator.ofFloat(mDanmuLayout002, "translationX", SCREEN_WIDTH, -SCREEN_WIDTH)
                .apply {
                    duration = RandomUtil.getNum(12_000, 20_000).toLong()
                    repeatMode = ValueAnimator.RESTART
                    repeatCount = ValueAnimator.INFINITE
                    addListener(mDanmu002Listener)
                }
        mAnim003 =
            ObjectAnimator.ofFloat(mDanmuLayout003, "translationX", SCREEN_WIDTH, -SCREEN_WIDTH)
                .apply {
                    duration = RandomUtil.getNum(12_000, 20_000).toLong()
                    repeatMode = ValueAnimator.RESTART
                    repeatCount = ValueAnimator.INFINITE
                    addListener(mDanmu003Listener)
                }
    
    }
    
    
    private fun setDanmuContent(cardView: CardView, tv: TextView) {
        cardView.setBackgroundResource(Constants.DANMU_BG[RandomUtil.getNum(Constants.DANMU_BG.size)])
        cardView.background.alpha = Constants.DANMU_ALPHA
        tv.text = Constants.DANMU_CONTENT[RandomUtil.getNum(Constants.DANMU_CONTENT.size)]
    }
    

    代码中引用了常用工具类库

    implementation 'com.blankj:utilcode:1.26.0'
    

    在这里插入图片描述

    录制软件用的"闪电GIF制作软件" 要钱的,我没付费所以有水印

    源码Github

    展开全文
  • 特效描述:弹幕文字动画 动画特效,jquery仿B站弹幕,可自由设置字体颜色代码结构1. 引入CSS2. 引入JS3. HTML代码发送(function(){var t=false;$("#color_choice").bigColorpicker(function(el,color){$(el).css(...

    特效描述:弹幕文字动画 动画特效,jquery仿B站弹幕,可自由设置字体颜色

    代码结构

    1. 引入CSS

    2. 引入JS

    3. HTML代码

    发送

    (function(){

    var t=false;

    $("#color_choice").bigColorpicker(function(el,color){

    $(el).css("background-color",color);

    t=true;

    });

    $("#send_out").click(function(){

    var cl;

    if(t){

    cl=$("#color_choice").css("background-color");

    }else{

    cl="#FFFFFF";

    }

    var text=$("#input_value").val();

    if(text != ''){

    var number=parseInt(Math.ceil(Math.random()*50)+10)

    var div1=document.getElementById("input_text");

    div1.innerHTML=""+text+"";

    $("#input_value").val("");

    $("#send_out").attr("disabled", true);

    var time1=setTimeout("$('#send_out').text('6s')",0);

    var time2=setTimeout("$('#send_out').text('5s')",1000);

    var time3=setTimeout("$('#send_out').text('4s')",2000);

    var time4=setTimeout("$('#send_out').text('3s')",3000);

    var time5=setTimeout("$('#send_out').text('2s')",4000);

    var time5=setTimeout("$('#send_out').text('1s')",5000);

    var time6=setTimeout("$('#send_out').attr('disabled', false);$('#send_out').text('发送')",6000);

    alert(di1.innerHTML);

    }else{}

    });

    })();

    展开全文
  • 那就是弹幕,现在也越来越多的人喜欢上了弹幕,甚至有人常说,‘正经人谁看视频啊,我是来看弹幕的????’,下面看下它的效果: 相信小伙伴们都看过了,那么它实现的原理是什么呢,那么我们前端怎么用我们web技术...
  • jquery仿哔哩哔哩弹幕文字动画特效
  • 滑动UILabel 实现类似弹幕效果,动画炫酷,实现简单.逻辑清楚可以自己尝试实现.
  • html5 canvas 视频网站文字弹幕动画特效 html5 canvas 视频网站文字弹幕动画特效
  • 主要介绍了Html5移动端弹幕动画实现示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 通过动画效果简单实现小弹幕功能。主要利用简单的DoubleAnimation制作动画效果。通过动画效果简单实现小弹幕功能。主要利用简单的DoubleAnimation制作动画效果。
  • iOS 弹幕动画demo Barrage, 里面做了接口封装和内存使用优化,各种状态测试通过,欢迎使用并提建议 Github地址:https://github.com/sunGd/demo/tree/master/BarrageDemo
  • css3动画实现弹幕效果

    2020-08-12 16:55:07
    实现构思: 利用css3动画和过度实现视频弹幕从右到左滚动的效果。 css3动画的属性值和用法 属性 描述 @keframes 定义动画效果,后接动画名 animation 所有动画属性的简写属性,除了animation-play-state ...
  • jQuery弹幕效果发表评论字幕动画代码
  • jQuery发布弹幕文字动画特效 jQuery简单的弹幕文字特效,输入描述你对TA的印象 限10个文字发布弹幕动画特效。 演示地址 下载地址
  • 移动的距离是屏幕宽度3.js动态的添加css动画函数,将高度、动画移动时间、动画延迟时间都用随机数控制代码:html骨架结构(以三个为例,如果觉得界面太长不友好,也可以js动态的生成) 一月一度的花呗还款期到啦哈哈哈...
  • 需求 有一个不定长度的数组,数组中是弹幕的文字内容,移动到弹幕页面时从数组...首先先做一个带动画的div,编写动画keyframes,其实动画就是从屏幕的最右侧到屏幕的最左侧加上弹幕自身宽度的距离,这个距离是可以通过
  • LZCommentAnimation #####弹幕动画原型,弹幕UILabel大小适应文本长度
  • js全屏星空背景发送文字弹幕动画特效,动画效果基于animation.css动画库,弹幕文字颜色随机显示。
  • 主要介绍了如何在Android应用中实现弹幕动画效果的实例,文中是利用RelativeLayout布局然后控制ViewGroup中view的显示,细节展示得比较详细,需要的朋友可以参考下
  • qt 实现弹幕, 支持动画gif、图片、文字随意组合,支持多个不覆盖显示等。
  • jQuery输入文字弹幕显示动画特效是一款输入描述你对TA的印象,限10个文字发布弹幕动画特效。
  • 在某个位置上展示一些弹幕弹幕的样式需求如下:![在这里插入图片描述](https://img-blog.csdnimg.cn/20210312173916879.png 2.实现过程 因为在很多位置都需要用到该样式的弹幕功能,所以我将弹幕封装成一个组件...
  • 哔哩哔哩弹幕动画视频下载方法.docx
  • jQuery输入文字弹幕显示动画特效是一款输入描述你对TA的印象,限10个文字发布弹幕动画特效。
  • jQuery简单的发布文字弹幕显示动画特效,适用于对人物的印象描述,弹幕文字向左滚动展示。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,699
精华内容 2,279
关键字:

动画弹幕