当前位置: 首页 > 知识库问答 >
问题:

在Android中的对话框中的VideoView完成监听器

饶德元
2023-03-14

我想在videoview中播放一个视频文件,该文件显示在一个对话框中,完成后应关闭对话框。我阅读了有关通过media controller进行播放的内容,因此我有以下内容:

final Dialog dialog = new Dialog(MyActivity.this);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.setContentView(R.layout.MyCustomLayoutWithVideoView);
    dialog.show();
    WindowManager.LayoutParams lp = new WindowManager.LayoutParams(
    WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT);
    lp.copyFrom(dialog.getWindow().getAttributes());
    dialog.getWindow().setAttributes(lp);
    final VideoView videoview = (VideoView) dialog.findViewById(R.id.videoView);
    Uri uri = Uri.parse(SoundFile);

    **MediaController mc = new MediaController(this);
    videoview.setMediaController(mc);**

        videoview.start();

    videoview.setVideoURI(uri);
    videoview.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {

        @Override
        public void onCompletion(MediaPlayer mp) 
{
Toast.makeText(getApplicationContext(), "Msg", Toast.LENGTH_LONG).show();
        }
    });

1) 声明mediacontroller的部分是错误的。它无法获取上下文,上下文是什么?

2) 如何根据最大高度和重量控制此对话框的大小?

共有1个答案

戎元忠
2023-03-14

您必须使用getApplicationContext()获取上下文。上下文表示环境数据。看看这里:Android中的上下文是什么?

 类似资料:
  • 我在自定义对话框中有一个视频视图,我正在为视频视图动态创建一个媒体控制器,并将其分配给代码中的视频视图,但是控制器实际上并不出现在视频上-它出现在对话框后面!你知道怎么把控制器放在视频上面吗? 我创建了一个静态对话框助手类来帮助构建自定义对话框: 所以在我的中,我只有这个来创建我的对话框:

  • 问题内容: 如何快速执行Firebase的完成侦听器?它说文档中有SetValue和UpdateValue的完成列表,但没有示例。 问题答案: setValue的完成在{}块(关闭)中处理。因此,一旦尝试设置setValue,该块中的代码就会执行。如果没有错误,错误将为nil,快照将是已写入的数据。 给出结果 并打印“完成”

  • 如何侦听MPAndroidChart中的滚动完成事件。 我重写了和,但似乎不起作用。方法即使在滚动结束后也会获得回调。 当用户触摸图表时调用,当用户停止触摸图表时调用。 因此,我需要捕捉当滚动完成时调用的事件。 那么,你能给出一个headsup关于如何在mpAndroidChart中监听linechart的滚动结束。

  • 本文向大家介绍Android EditText 监听用户输入完成的实例,包括了Android EditText 监听用户输入完成的实例的使用技巧和注意事项,需要的朋友参考一下 我们都知道, Android EditText输入框,并没有监听用户输入完成的功能,需要我们自己实现。 下面是实现的方法,仅供参考: 配合Handler使用: 以上这篇Android EditText 监听用户输入完成的实例

  • 我正在测试一个监听按钮点击的功能(正 所以结构是这样的,我有一个由创建的,我把一个带有两个片段的放入这个。我的目标是,当我点击上的肯定按钮时,我希望调用这两个片段中的一些方法,以便收集这些片段上的数据。 现在的问题是,只有第二个片段的反应,我不知道为什么。 下面是代码: > 我创建了一个接口文件 我有一段对话 我的碎片A 我的碎片B 我的ViewPager适配器使用内部对话片段 我的主要活动 有人

  • 问题内容: 我想将Listener放在上。我寻找信息,它是这样的: 问题在于Eclipse认为它是的,并且不起作用。我怎样才能解决这个问题? 问题答案: 你可以这样做: