手机滑动看新闻,之前滑动过的地方心脏跳动慢吃什么调理是怎么回事?

视频切换无缝衔接 打造丝滑体验 | 高仿腾讯新闻
作者:zzh12138
https://www.jianshu.com/p/ff9f11da13c0
本文由作者授权发布。
是的,你没看错,又是腾讯视频!又是高仿!没办法啊,产品喜欢抄袭别人
还是上效果图吧
腾讯新闻效果
同样是新闻客户端,为什么你这么优秀。
好了,看看demo的效果。
跟原效果还是有点差别的。
注意:以上 gif 图是我在作者的gif 之上,二次录制和压缩的...有兴趣的最好还是运行下sample。
拆解一下页面效果吧:
新闻页面视频滚动到屏幕中间自动播放(wifi下,demo没有判断)
点击视频,页面切换到视频列表页面,期间视频不会停止播放,平滑过渡到第二个页面
视频列表页面滑动后,播放第一个完全可见的视频(个人理解,理解错了大佬不要打我)
视频列表页面,视频播放时,点击评论数,切换到评论页面,效果同上
视频列表页面,视频播放时,点击其他item任意区域,该item滑到顶部,并播放视频
无缝续播的原理这里不做讲解(其实我也不会呀...),做过播放器的应该都懂吧,原理大致就是:
解码器动态关联不同的渲染视图(RenderView),比如使用MediaPlayer动态关联SurfaceView,就如同一个电脑主机不断连接不同的显示器。
PS:这里注意一下,render不要重置,不然会闪屏哦。
Demo中用的是这个播放器 PlayerBase,高度解耦(不像其他播放器一样,对布局文件有限制),支持各种自定义,最大的好处的就是提供能无缝续播助手(续播的话不要使用mediaPlayer,会出现问题)。
PlayerBase高复用性、低耦合的视频播放器
播放器相关
这里还是简单说下播放器怎么用吧,不需要改界面的话(demo中略微做了修改),直接拷下面红色方框中的类,在Application里面进行配置就可以使用啦(ijk,exo需要引入对应的库哦,demo中ijk不支持https,所以视频可能不能播放)。
无缝续播相关都在RelationAssist类里。续播的话直接调用
AssistPlayer. get().play(mContainer, null);
就可以在不同的容器内(即上面的mContainer)继续播放之前的内容了。
需要自定义界面或者有其他问题的参考这里和demo,有问题的加群问群主吧。
新闻列表页
用RecyclerView实现,这里说一下页面滑动对视频item的处理:当页面停止滑动后,判断是屏幕中央是否有可见的视频item,有则开始播放。同时,判断之前是否有在播放的视频滑出了界面,有则停止播放。
if(newState == SCROLL_STATE_IDLE) {
//滑动屏幕中间开始
LinearLayoutManager manager = (LinearLayoutManager) recyclerView.getLayoutManager();
intfirst = manager.findFirstVisibleItemPosition();
intlast = manager.findLastVisibleItemPosition();
for( inti = i &= i++) {
if(isVideo) {
//列表视频
if(isCenter && !AssistPlayer. get().isPlaying()) {
ImageView imageView = view.findViewById(R.id.adapter_video_image);
imageView.performClick();
//滑出屏幕高度一半停止播放
intplayPosition = mAdapter.getPlayPosition();
if(playPosition != -1) {
if(isOutSide) {
stopPlay();
视频列表页
同样也是RecyclerView实现,这里滑动播放逻辑跟新闻列表页有点不同(纯属个人理解,理解错了各位大佬别打我)。进入页面播放第一个视频,上滑会加载更多(demo里面没有实现)。上下滑动停止后,会播放当前屏幕完全可见的第一个item的视频。
并且,当播放视频时,点击其他item的任意位置,该item会滑动到顶部并播放视频。当前视频播放完毕后,如果列表页后面还有视频,会自动播放下一个,并将该item滑到页面顶部。当退出视频列表页时,如果播放的不是第一个视频,则不需要过渡动画。
滑动监听:
if(newState == SCROLL_STATE_IDLE) {
LinearLayoutManager manager = (LinearLayoutManager) recyclerView.getLayoutManager();
intfirst = manager.findFirstVisibleItemPosition();
intpos= manager.findFirstCompletelyVisibleItemPosition();
if( pos!= mAdapter.getPlayPosition()) {
View view = mRecycler.getChildAt( pos- first);
ImageView imageView = view.findViewById(R.id.adapter_video_list_image);
imageView.performClick();
因为已经对滑动进行了监听,所以自动播放下一个视频可以通过滑动item来实现:监听视频的播放事件,当视频播放完毕后,判断该视频是否是最后一个,不是则滑到屏幕顶部,播放视频。
PS:滑动要调用smoothScroll方法,不能直接调scroll。
评论页评论页只是一个播放器容器和一个显示评论数据的recyclerView(demo里面没有做评论盖楼),这里不细说,详见demo。3视频平滑过渡切换重点来了,第一眼看到视频平滑过渡切换页面,想到的就是google在5.0版本提供activity切换的共享元素动画,但实操之后发现效果不怎么理想。效果如图:退出activity会闪屏也试过,去掉系统的默认动画,将主题设置为透明,自己手动平移,放缩view,还是有点问题(可能是我姿势不对)。还是会有上面的闪屏问题。没办法罗,只能在当前activity里面进行过渡了。这里我的做法是在根布局添加一个fragment。这里着重说一下要注意的几个地方吧:
需要重写onBackPressed(),区分是否横屏模式,是否显示了评论页,列表视频页,还是普通新闻页。
列表视频页,普通新闻页都需要记录下当前播放的item的position,退出页面会用到。
列表视频,评论页请求回来的网络数据不能过早显示。
过渡动画需要在view绘制好后才开始执行。
下面是页面过渡的过程:有点丑,将就点吧
获取view的属性(宽高、位置),新闻的信息,并传给fragment
fragment背景设置为透明,改变关联的view属性,并开始动画,还原背景色和view的属性,这里有个地方需要特别留意,如果你的播放容器跟我一样是放在recyclerView里面的,那么位移的view必须是整个item!整个item!整个item!(子view总不可能跑出父view的范围吧...)
动画完毕后显示加载的网络数据(按个人需求进行修改)
退出fragment的时候,将动画反转一遍就OK啦。要注意当前播放的视频是否是进来播放的那个,是的话才需要执行动画哦。
FragmentTransaction transaction = getFragmentManager().beginTransaction(); Bundle bundle = newBundle(); bundle.putParcelable( "attr", attr); bundle.putParcelable( "news", bean); commentFragment.setArguments(bundle); commentFragment.setOnCloseClickListener( this); transaction. add(R.id.fragment_video_list_comment_container, commentFragment); transaction.commit(); } mContainer.getViewTreeObserver().addOnPreDrawListener( newViewTreeObserver.OnPreDrawListener() { @OverridepublicbooleanonPreDraw(){ //绘制完毕,开始执行动画mContainer.getViewTreeObserver().removeOnPreDrawListener( this); mContainer.getLocationOnScreen(location); mContainer.setTranslationX(mAttr.getX() - location[ 0]); mContainer.setTranslationY(mAttr.getY() - location[ 1]); mContainer.setScaleX(mAttr.getWidth() / ( float) mContainer.getMeasuredWidth()); mContainer.setScaleY(mAttr.getHeight() / ( float) mContainer.getMeasuredHeight()); mRecycler.setAlpha( 0); mTextView.setAlpha( 0); mClose.setAlpha( 0); mCommentNum.setAlpha( 0); mContainer.animate().translationX( 0).translationY( 0).scaleX( 1).scaleY( 1).setDuration(DURATION); mRecycler.animate().alpha( 1).setDuration(DURATION); mTextView.animate().alpha( 1).setDuration(DURATION); mClose.animate().alpha( 1).setDuration(DURATION); mCommentNum.animate().alpha( 1).setDuration(DURATION); AssistPlayer.get().play(mContainer, null); returntrue; } }); 大功告成有疑问(播放器相关的点这里)或者demo有bug的可以留言,看到会回复的。用到的播放器的地址:https://github.com/jiajunhui/PlayerBase附上本案例源码(Kotlin版可能会有一点语法问题...)Java_Demohttps://github.com/zzh12138/VideoDemoJavaKotlin_Demohttps://github.com/zzh12138/VideoDemo_Kotlin
PS:广州附近有坑位,招一年开发仔的吗?有的联系下呗。
责任编辑:
声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。
今日搜狐热点清空所有记录
抖音海草舞原唱是谁跳的 海草舞是怎么火的
12:18:27来源:
作者:子涵
最近,在抖音上一首叫《海草舞》的bgm超火,不少人好奇海草舞原版是谁跳的,据悉海草舞创作者是萧全,海草舞是怎么火起来的?最近非常火的《海草舞》的正式版MV出来了,简直.....是有生以来看过最魔性的MV之一了,情不自禁抖起了腿。原版MV原来是这样的,随着音乐一起飘浮起来!萧全个人资料微博图片介绍国 籍 中国民 族 汉血 型 A型身 高 168cm体 重 62kg出生地 广西壮族自治区北海市合浦县出生日期 日职 业 歌手、音乐制作人经纪公司 致力音乐代表作品 走着走着就散了、社会摇主要成就 第二届“中国人物报道金飞龙奖”颁奖盛典最佳爱心奉献音乐人物奖萧全,日出生于广西壮族自治区北海市合浦县,歌手、华语乐坛音乐唱作人、音乐制作人,广东流行音乐学会会员,广东音乐家协会会员。1999年毕业后,辗转于全国各大夜总会和酒吧演出,并开始接触音乐制作。继风靡大江南北《社会摇》之火,萧全又出神曲《海草舞》。这支歌曲延续了之前《社会摇》的风格,曲风和《社会摇》也颇为相似。同样的是这首歌依然和《社会摇》一样受欢迎,刚刚发布不久就荣登酷狗排行榜前30名。 与此同时其欢快,通俗又略微有点二且琅琅上口节奏感极强的《海草舞》现在已经逐渐取代原先的《极乐净土》成为抖音,快手,一样等各大平台的主要背景音乐。很多主播还发布了自己跳《海草舞》的小视频。
大家都在看
电视剧分类眼球老跳动是怎么回事?_网易新闻
眼球老跳动是怎么回事?
用微信扫码二维码
分享至好友和朋友圈
名医信箱:
我今年快40岁了,因为最近换了工作,工作地点离家较远,每天的睡眠时间也比之前少了很多。工作地点日照也比较厉害。最近就觉得左边的眼球老是时不时要跳一下,有时打个喷嚏都觉得眼睛在跳,这样的状况持续大约有一两个月了,视力方面倒是没发现异常。请问这是因为睡眠时间减少引起的视疲劳呢,还是眼睛可能有什么病变?平常应注意什么?
解答:广州医科大学附属第四医院眼科赵云云主治医师
患者来信主诉“眼球跳”,但临床上最多见的是“眼睑痉挛”,即眼皮跳。眼皮在医学上称为“眼睑”,主要由眼轮匝肌和眼睑提肌构成。眼睑在视神经、面神经等的支持下,完成眨眼、闭眼功能,起到保护眼球、清洁和润滑角结膜的作用。眼睑跳并非皮肤在跳,而是眼轮匝肌、眼睑提肌在神经的支配下进行收缩而牵连表面皮肤随之运动。其产生的原因主要有两种:一种是失眠或睡眠不足、眼睛过度疲劳、神经衰弱、贫血、烟酒过度、月经不调等;另一种是某些眼病引起的,如屈光不正、结膜炎、角膜炎、麦粒肿,甚至血管、神经炎症等。我们偶尔发生眼睑跳,多半是休息不够或吃了刺激性食物所致。
这种眼睑跳不影响健康,其发作是一过性的,发作时间很短,常常只是几秒钟,跳动程度也不严重,一般不需要进行特殊处理,只要闭眼休息,进行局部按摩或热敷,眼睑跳就会消失。出现这种情况平时要注意用眼习惯,定时休息,尽量在空隙时远眺让眼睛放松,多补充维生素A、C、D,多吃胡萝卜、水果、海产品等。
但眼睑跳发生频繁或持续时间长、眼睑跳幅度大,就有可能是器质性疾病,如屈光不正、结膜炎、角膜炎、麦粒肿,甚至血管、神经炎症等,因此需要及早就医。
对于眼球跳动的问题临床比较少见,主要也考虑受精神紧张、疲劳、睡眠不足和长时间电脑辐射等的影响,平时要多注意休息,也可进行局部按摩或热敷。但也不排除血管性搏动、神经病变等器质性疾病引起,要尽早就医检查。
另外,还有一种眼球震颤,它是一种不自主的、有节律性的、往返摆动的眼球运动。患者多无明显自觉不适。具体情况建议患者到医院就诊进一步确诊。(广州日报记者陈翔 通讯员陈苹、骆茵、梁凯涛)
作者:广州日报陈翔 陈苹 骆茵 梁凯涛
本文来源:大洋网-广州日报
责任编辑:王晓易_NE0011
用微信扫码二维码
分享至好友和朋友圈
加载更多新闻
热门产品:   
:        
:         
热门影院:
阅读下一篇
用微信扫描二维码
分享至好友和朋友圈看手机新闻屏幕上总出现几%总在跳动是怎么回事_百度知道
看手机新闻屏幕上总出现几%总在跳动是怎么回事
看手机新闻屏幕上总出现几%总在跳动是怎么回事...
看手机新闻屏幕上总出现几%总在跳动是怎么回事
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
风飞尘落03
来自电子数码类芝麻团
风飞尘落03
采纳数:9452
获赞数:5687
擅长:暂未定制
参与团队:
跳屏,是指触摸屏手机屏幕某一部分失控,无节操胡乱点击,或者某个按键重复点击。跳屏可能会导致某些按键失灵。至今,网上没有一个能完美解决跳屏问题的方法。跳屏问题也会出现在电脑上。简介编辑跳屏,是指触摸屏手机屏幕某一部分失控,无节操胡乱点击,或者某个按键重复点击。跳屏,还可能导致某些按键失灵。至今,网上没有一个能完美解决跳屏问题的方法。此现象主要发生在一些中低端手机产品上。2跳屏原因编辑关于跳屏的原因,网友众说纷纭,归纳为以下几种情况:1、网络信号不稳定2、屏幕表面产生的电流3、刷的rom与手机不匹配4、radio基带未升级。5、硬件问题,手机可能释放翻新机,屏幕可能是次品。6、排线问题。7、与你是否用原电原充及手机屏幕是电容还是电阻有关。8、手机数据问题。3解决方法编辑手机跳屏解决方法1,先给大家讲一个最简单的方法,但是此方法不是完美的,一般出现跳屏的朋友都是让手机自动调节屏幕亮度,一般跳屏都要在光线比较黑的地方才能看的出来,所以可以点击手机设置,选中显示设置,先把自动调节亮度那个勾去掉,然后再华东下面那条亮度调节条,慢慢把光线调亮,差不多在光线条百分之60左右,跳屏就会消失了,但是有些人喜欢晚上的时候在床上看看新闻看看网页什么的,亮度太亮了眼睛会很不舒服,所以此问题治标不治本。2,进入设置-省电模式-把背景颜色选框的打钩去掉 因为改选项会更改背景颜色以及在电子邮件和互联网中省电。这个方法可能会对一些人的手机产生作用,但是我个人设置了,还是没有得到改善。不过也可以动手测试下。  3,还有一种屏幕出现闪屏的问题是,大家不小心开启了“开发者选项”中的“显示屏幕更新”,和“严格模式”,这两个选项会使得屏幕总会不自觉的闪烁。4, 最后最完美的解决方法,就是刷机。刷了最新rom之后就完美解决了闪屏问题,不管屏幕亮度多暗,都不会再出现有闪屏现象,rom的链接可以到机锋,安卓网,或者其他安卓论坛,搜索9300港版rom。有很多资源很教程。电脑跳屏解决方法分辨率和刷新率设置是否合适,下载驱动精灵安装显卡驱动,在看看连线是否有问题,先软后硬修复一下系统,再不行就检修一下去吧(再有就是显卡、显示器的问题了)。  1、开机按F8不动到高级选项出现在松手,选“最近一次的正确配置”回车修复。  2、如果故障依旧,请你用系统自带的系统还原,还原到你没有出现这次故障的时候修复(或用还原软件进行系统还原)。   3、如果故障依旧,使用系统盘修复,打开命令提示符输入SFC /SCANNOW 回车(SFC和/之间有一个空格),插入原装系统盘修复系统,系统会自动对比修复的。   4、如果故障依旧,在BIOS中设置光驱为第一启动设备插入原装系统安装盘按R键选择“修复安装”即可。  5、如果故障依旧,建议重装操作系统。   使用系统自带的系统还原的方法:  系统自带的系统还原:“开始”/“程序”/“附件”/“系统工具”/“系统还原”,点选“恢复我的计算机到一个较早的时间”,按下一步,你会看到日期页面有深色的日期,那就是还原点,你选择后,点击下一步还原(Win7还原系统,在控制面板然后设备和安全子选项然后备份和还原子选项)。
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。在线时间3 小时
版本V8.5.4.0.MBGCNED
积分 59, 距离下一级还需 141 积分
积分 59, 距离下一级还需 141 积分
机型未知设备
MIUI版本V8.5.4.0.MBGCNED
本帖最后由 不要忘记00 于
22:17 编辑
之前说小米5s plus用腾讯新闻手机app看新闻的时候老是自动跳屏,其实把手机app升级一下就可以了,升到新一点的版本就什么事都没有了。
分享到微信朋友圈
打开微信,点击底部的“发现”,使用 “扫一扫” 即可将网页分享到我的朋友圈。
经验5225 米
在线时间46 小时
机型未知设备
签到次数91
MIUI版本8.8.3
经验28959 米
在线时间196 小时
机型未知设备
MIUI版本8.2.1
什么版本?
在线时间1 小时
版本V8.0.2.0.KHCCNDG
积分 38, 距离下一级还需 12 积分
积分 38, 距离下一级还需 12 积分
机型未知设备
MIUI版本V8.0.2.0.KHCCNDG
最近MIUI系统优化越来越坑了
在线时间3 小时
版本V8.5.4.0.MBGCNED
积分 59, 距离下一级还需 141 积分
积分 59, 距离下一级还需 141 积分
机型未知设备
MIUI版本V8.5.4.0.MBGCNED
什么版本?
MIUI8.0.10.0,小米系统老是更新,更新了也不好好调试问题一大堆烦死了。
经验1684 米
在线时间22 小时
版本8.7.12
机型未知设备
签到次数37
MIUI版本8.7.12
8.0.10.0是这样,看论坛不能忍,更新到8.0.13好了
经验28959 米
在线时间196 小时
机型未知设备
MIUI版本8.2.1
不要忘记00 发表于
MIUI8.0.10.0,小米系统老是更新,更新了也不好好调试问题一大堆烦死了。
我8.6.0出现过跳屏,,刷了开发用了两个版本,稳定出来了又刷回稳定版本,8.0.10.0没出现跳屏了,,但我的HD高清没有了,,卡是开通的,volte开了也不显示了
经验28959 米
在线时间196 小时
机型未知设备
MIUI版本8.2.1
At_Myself 发表于
<font color="#.0.10.0是这样,看论坛不能忍,更新到8.0.13好了
你更了??有新??
经验28959 米
在线时间196 小时
机型未知设备
MIUI版本8.2.1
不要忘记00 发表于
MIUI8.0.10.0,小米系统老是更新,更新了也不好好调试问题一大堆烦死了。
稳定版才更新才一次
经验2309 米
在线时间39 小时
版本V9.5.2.0.NBGCNFA
积分 2551, 距离下一级还需 2449 积分
积分 2551, 距离下一级还需 2449 积分
机型小米5s Plus
签到次数94
MIUI版本V9.5.2.0.NBGCNFA
百度下载页面公告调频
MIUI 9纪念勋章
“澎湃S1 ”芯片纪念勋章
参与活动回帖可得
点赞金米兔勋章
参加小米上市回帖活动
2018新年勋章
参与回帖活动
MIUI七周年
全局搜索纪念勋章
参加全局搜索内测
万圣节勋章
参加回帖活动
米兔月饼勋章
参加回帖活动
参与红米Note 4X活动
圣诞节勋章
参与圣诞活动
小火箭勋章
神舟11号 话题活动
2017年小金鸡勋章
回复2016年度评选活动贴
Copyright (C) 2017 MIUI
京ICP备号 | 京公网安备34号 | 京ICP证110507号

我要回帖

更多关于 心脏跳动过快是什么病 的文章

 

随机推荐