Android MediaController定位

Android MediaController定位,android,android-videoview,mediacontroller,Android,Android Videoview,Mediacontroller,我正在使用VideoView播放本地mp4,我也在使用MediaController。媒体控制条不是在我的视频剪辑下显示,而是在屏幕中间显示。我使用setAnchorView将其附加到我的视频视图,但这没有任何影响。如何将mediacontroller定位在视频视图的正下方 public class VideoDemo extends Activity { private VideoView video; private MediaController ctlr; @Override publ

我正在使用VideoView播放本地mp4,我也在使用MediaController。媒体控制条不是在我的视频剪辑下显示,而是在屏幕中间显示。我使用setAnchorView将其附加到我的视频视图,但这没有任何影响。如何将mediacontroller定位在视频视图的正下方

public class VideoDemo extends Activity {
private VideoView video;
private MediaController ctlr;

@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    getWindow().setFormat(PixelFormat.TRANSLUCENT);
    setContentView(R.layout.main);

    File clip=new File(Environment.getExternalStorageDirectory(),
                                         "test.mp4");

    if (clip.exists()) {
        video=(VideoView)findViewById(R.id.video);
        video.setVideoPath(clip.getAbsolutePath());

        ctlr=new MediaController(this, false);
        ctlr.setAnchorView(video);
        ctlr.setMediaPlayer(video);
        video.setMediaController(ctlr);
        video.requestFocus();
    }
}
}
我的布局是

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="400dp"
    android:layout_height="400dp"
    android:background="#fff"
    >
<VideoView 
     android:id="@+id/video" 
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>
</LinearLayout>

你能试试这个吗:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="400dp"
    android:layout_height="400dp"
    android:background="#fff"
    android:orientation="vertical" >

    <VideoView
        android:id="@+id/video"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1" />

</LinearLayout>

然后使用as布局参数添加MediaController

  • 布局\宽度:填充\父级
  • 布局高度:包裹内容
  • 布局重量:0

希望这有帮助

> P>为使平板应用程序在全屏大小而不是在中间显示媒体控制器,您需要在您的ANDROIDActudio .xml中使用一个SDK行,并且目标是一个SDK版本,它知道更高分辨率设备的存在——否则很多视图被限制为480x320

编辑:我之前发布过添加uses sdk时遇到一些问题,导致回放/暂停/前进显示下方没有进度滑块,但结果表明,在适用于android的特定平板电脑上,软主页/菜单/etc按钮栏只是覆盖了媒体控制器的下半部分。

尝试:

ctrl.setPadding(x, y, z, w)

我有一个解决方案,添加一个垂直布局,然后将视频视图放在该布局中,媒体控制器将出现在显示视频的布局底部。

你有没有想过?我正在创建一个平板电脑应用程序,我想做完全相同的事情。播放视频没有问题,我只想让控件显示在视频视图上。这里的平板电脑也有同样的问题:(有人找到解决办法了吗?