为了账号安全,请及时绑定邮箱和手机立即绑定

Android仿新浪微博滑动播放视频

标签:
Android

最近突发奇想,想实现下 类似新浪微博 或者 qq空间,播放视频,所以就在git上边找了一下,若有侵权,请及时联系我,立马删除,谢谢

本文仿照新浪微博/QQ空间实现了滑动自动播放视频的功能。

本文来自个人博客:http://www.zhangliwei.date  

原文地址:http://zhangliwei.date/2016/09/05/Android%E4%BB%BF%E6%96%B0%E6%B5%AA%E5%BE%AE%E5%8D%9A%E6%BB%91%E5%8A%A8%E6%92%AD%E6%94%BE%E8%A7%86%E9%A2%91/?utm_source=tuicool&utm_medium=referral

如有疑问欢迎讨论,感谢您的关注。

[](https://github.com/zzzlw/autovideoplayer#

[](https://github.com/zzzlw/autovideoplayer#关键代码)关键代码

[](https://github.com/zzzlw/autovideoplayer#1监听滚动事件)1.监听滚动事件

首先要给listview添加setOnScrollListener监听,注意这个监听在recyclerView上是addOnScrollListener,也就是说下面代码同时支持recyclerView。

public int firstVisible=0,visibleCount=0, totalCount=0;
  videoList.setOnScrollListener(new AbsListView.OnScrollListener() {
        @Override
        public void onScrollStateChanged(AbsListView view, int scrollState) {
            switch (scrollState) {

                case AbsListView.OnScrollListener.SCROLL_STATE_FLING:
                    Log.e("videoTest", "SCROLL_STATE_FLING");
                    break;

                case AbsListView.OnScrollListener.SCROLL_STATE_IDLE:
                    Log.e("videoTest", "SCROLL_STATE_IDLE");
                    autoPlayVideo(view);
                    break;

                case AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:
                    Log.e("videoTest", "SCROLL_STATE_TOUCH_SCROLL");
                    break;

                default:
                    break;
            }
        }   
        @Override
        public void onScroll(AbsListView view, int firstVisibleItem,
                             int visibleItemCount, int totalItemCount) {
            // firstVisibleItem   当前第一个可见的item
            // visibleItemCount   当前可见的item个数
            if (firstVisible == firstVisibleItem) {
                return;
            }
            firstVisible = firstVisibleItem;
            visibleCount = visibleItemCount;
            totalCount = totalItemCount;
        }
    });

监听里会有两个方法,<span style="box-sizing: border-box; font-weight: 600;">我们用onScroll方法记录 当前第一个可见Item,以及可见Item总数,用onScrollStateChanged来监听手滑动屏幕的整个过程。</span> 当onScrollStateChanged 中的scrollState字段值等于SCROLL_STATE_IDLE 时,代表本次滑动完毕并停止滚动

原文链接:http://www.apkbus.com/blog-535369-61901.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消