VideoView内联/全屏模式切换

时间:2013-01-16 08:31:38

标签: android media-player android-videoview

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

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

1 个答案:

答案 0 :(得分: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);

并将其设置回来:

    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);

我假设您知道如何制作OnClickListener

我在这里得到了这些信息:VideoView Full screen in android application

<强> EDIT1
我可以很快想到两件事  1.添加:getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
 2.或试试这个:

YourButton.setVisibility(View.GONE);

YourButton.setVisibility(View.INVISIBLE);