android 视频播放 JiaoZiVideoPlayer使用分析
一、在RecyleView、ListView等列表下的使用
当列表移出屏幕的范围区域时,RecyleView会使用addOnChildAttachStateChangeListener,来表示当前子控件已经移动出了屏幕范围,这时饺子视频会重置状态,代码如下:
@Overridepublic void onChildViewDetachedFromWindow(View view) {Jzvd jzvd = view.findViewById(R.id.videoplayer);if (jzvd != null && Jzvd.CURRENT_JZVD != null &&jzvd.jzDataSource.containsTheUrl(Jzvd.CURRENT_JZVD.jzDataSource.getCurrentUrl())) {if (Jzvd.CURRENT_JZVD != null && Jzvd.CURRENT_JZVD.screen != Jzvd.SCREEN_FULLSCREEN) {Jzvd.releaseAllVideos();}}}
二、视频播放时变为小窗口在最右侧播放
public void gotoScreenTiny() {Log.i(TAG, "startWindowTiny " + " [" + this.hashCode() + "] ");if (state == STATE_NORMAL || state == STATE_ERROR || state == STATE_AUTO_COMPLETE)return;ViewGroup vg = (ViewGroup) getParent();vg.removeView(this);cloneAJzvd(vg);CONTAINER_LIST.add(vg);ViewGroup vgg = (ViewGroup) (JZUtils.scanForActivity(getContext())).getWindow().getDecorView();//和他也没有关系FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(400, 400);lp.gravity = Gravity.RIGHT | Gravity.BOTTOM;//添加滑动事件等vgg.addView(this, lp);setScreenTiny();}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
