繁体   English   中英

如何指定视频视图的位置? (左上,右上,左下…等)

[英]How can i specify the position of a videoview? (top left, top right, bottom left… etc )

我有一个VideoView,我知道如何在屏幕上居中,但是现在我需要在屏幕上以动态方式(Java代码,而不是xml代码)指定位置。

这是我的实际代码:

    VideoView vv = new VideoView(this);
    this.setContentView(vv);
    android.widget.FrameLayout.LayoutParams vvParams = (android.widget.FrameLayout.LayoutParams) vv.getLayoutParams();
    vvParams.gravity=17; //gravity 17 = center horizontal & vertical
    vvParams.width=150;
    vv.setLayoutParams(vvParams);        
    String fileName = "android.resource://" + getPackageName() + "/" + R.raw.v;
    vv.setVideoURI(Uri.parse(fileName));
    vv.start();

这些是我想指定的可能位置:

(垂直水平)

  • 左上方,顶部中心,右上方
  • 左中心,中心中心,右中心
  • 左下,中下,右下

如何用Java代码动态地指定这些位置?

使您的VideoView成为RelativeLayout的子级,然后像这样更新LayoutParams:

RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams();

// Horizontal alignment - choose as appropriate
lp.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
//lp.addRule(RelativeLayout.CENTER_HORIZONTAL);
//lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);

// Vertical alignment - choose as appropriate
lp.addRule(RelativeLayout.ALIGN_PARENT_TOP);
//lp.addRule(RelativeLayout.CENTER_VERTICAL);
//lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);

vv.setLayoutParams(lp);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM