Android VideoView的大小调整赢得';t调整视频大小

Android VideoView的大小调整赢得';t调整视频大小,android,android-videoview,layoutparams,Android,Android Videoview,Layoutparams,我有一个视频视图,可以根据键盘事件调整大小。我观察到,即使视频视图的布局发生了变化(变化清晰可见),视频(由视频视图播放)也不会调整大小。我是否需要打电话将视频调整到新的布局 我尝试了“invalidate()”和“requestLayout()”,但都不起作用。您需要创建自定义视频视图,因为它需要调用以下两种方法: onMeasure()和onConfigurationChanged() 此答案已详细解释,请检查以下内容: 您需要创建自定义视频视图,因为它需要调用以下两种方法: onMeasu

我有一个
视频视图
,可以根据键盘事件调整大小。我观察到,即使视频视图的布局发生了变化(变化清晰可见),视频(由视频视图播放)也不会调整大小。我是否需要打电话将视频调整到新的布局


我尝试了“invalidate()”和“requestLayout()”,但都不起作用。

您需要创建自定义视频视图,因为它需要调用以下两种方法:

onMeasure()
onConfigurationChanged()

此答案已详细解释,请检查以下内容:


您需要创建自定义视频视图,因为它需要调用以下两种方法:

onMeasure()
onConfigurationChanged()

此答案已详细解释,请检查以下内容:


将FrameLayout用作videoView的父级

 <?xml version="1.0" encoding="utf-8"?>
 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent">

   <VideoView
       android:id="@+id/myVideo"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_gravity="center" />

</FrameLayout>

将FrameLayout用作videoView的父级

 <?xml version="1.0" encoding="utf-8"?>
 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent">

   <VideoView
       android:id="@+id/myVideo"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_gravity="center" />

</FrameLayout>

在更改了视频视图的所有者布局后,我通过这样做重新实现了视频视图的大小:

mVideoView.getHolder().setSizeFromLayout();

在更改了视频视图的所有者布局后,我通过这样做重新实现了视频视图的大小:

mVideoView.getHolder().setSizeFromLayout();

布局什么时候改变?播放时更改或先更改版面,然后播放视频播放时更改版面时更改?在玩的时候改变,或者先改变布局,然后在玩的时候改变。这对我很有用。首先,我在包含VideoView的most父视图组上调用invalidate(),然后在VideoView上调用getHolder().setSizeFromLayout(),这对我很有效。首先,我对包含VideoView的most父视图组调用invalidate(),然后对VideoView调用getHolder().setSizeFromLayout()