尝试在视频视图中添加媒体控制器但未显示

问题描述

这是我的视频视图适配器类代码。每件事都在我的代码中,但我无法在我的应用程序中看到媒体控制器,而 videoView 的相同代码在其他项目中也很好。请帮忙。

    if (type.equals("video")) {
            viewholder.play.setVisibility(View.VISIBLE);
            viewholder.play.setEnabled(true);
            viewholder.play.setOnClickListener(v -> {
                Dialog video;
                video = new Dialog(v.getContext(),R.style.ShapeAppearanceOverlay_MaterialComponents_MaterialCalendar_Window_Fullscreen);
                video.setContentView(R.layout.dialog_video_home);
                Objects.requireNonNull(video.getWindow()).setLayout(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT);
                video.setCancelable(true);
                video.show();
                ProgressDialog bar = new ProgressDialog(viewholder.itemView.getContext());
                bar.setTitle("Connecting");
                bar.setMessage("Please wait..");
                bar.setCancelable(false);
                bar.show();
                VideoView videoView;
                videoView = video.findViewById(R.id.exoplayerview);
                if (bar.isShowing()) {
                    Uri uri = Uri.parse(homeModel.getPostUrl());
                    videoView.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            Toast.makeText(context,"Hello ",Toast.LENGTH_LONG).show();
                        }
                    });

                    videoView.setVideoURI(uri);
                    MediaController ctrl = new MediaController(context);
                    ctrl.setAnchorView(videoView);
                   // ctrl.setMediaPlayer(videoView);
                    videoView.setMediaController(ctrl);
                    videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                        @Override
                        public void onPrepared(MediaPlayer mp) {
                            Log.d("duration","duration = "+mp.getDuration());
                            bar.dismiss();
                            videoView.requestFocus();
                            videoView.start();
                            ctrl.show(mp.getDuration());

                        }
                    });

                }

            });
        }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)