VideoView内联/全屏模式切换

mac*_*dit 3 android media-player android-videoview

我正在研究android中的一个自定义视频播放器.我正在使用VideoView播放视频.最初我的VideoView将具有一定的尺寸(比方说尺寸=(宽度,高度)=(400,300)).我的自定义视频视图的控制按钮之一是"展开/折叠".单击"展开/折叠"按钮后,我想将VideoView大小设置为全屏(表示设备的全屏大小),如果当前VideoView大小为内联,反之亦然(从全屏到内联也是如此).

有人知道完成上述任务的正确方法吗?

Big*_*low 10

首先,你有胆量问一个Android问题,并有一个iOS徽标;)(开玩笑)

但是,我认为你可以使用这个:

    DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics);
    android.widget.LinearLayout.LayoutParams params = (android.widget.LinearLayout.LayoutParams) videoView.getLayoutParams();
    params.width =  metrics.widthPixels;
    params.height = metrics.heightPixels;
    params.leftMargin = 0;
    videoView.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud)

并将其设置回:

    DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics);
    android.widget.LinearLayout.LayoutParams params = (android.widget.LinearLayout.LayoutParams) videoView.getLayoutParams();
    params.width =  (int) (400*metrics.density);
    params.height = (int) (300*metrics.density);
    params.leftMargin = 30;
    videoView.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud)

我假设你知道怎么做OnClickListener.

我在这里得到的信息:Android应用程序中的VideoView全屏

Edit1
我可以快速思考两件事.
1.添加:getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
2.或尝试这样:

YourButton.setVisibility(View.GONE);
Run Code Online (Sandbox Code Playgroud)

要么

YourButton.setVisibility(View.INVISIBLE);
Run Code Online (Sandbox Code Playgroud)