У меня проблема с изменением размера видео, я должен построить макет программно, и вот мой код:
layout = new RelativeLayout(this);
top = new RelativeLayout.LayoutParams( LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);
top.addRule(RelativeLayout.ALIGN_PARENT_TOP);
RelativeLayout.LayoutParams middle = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
middle.addRule(RelativeLayout.BELOW, myText.getId());
bottom = new RelativeLayout.LayoutParams( LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);
bottom.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
layout.addView(myText,top);
layout.addView(myVideo,middle);
layout.addView(myButtons,bottom);
setContentView(layout);
Корневой макет является относительным макетом. myText - это Textview, который я хочу добавить вверху корневого макета. Далее я хочу добавить VideoView ниже myText. И в нижней части корневого макета, я хочу добавить несколько кнопок.
myVideo - это LinearLayout, определенный следующим образом:
video = new VideoView(this);
myVideo = new LinearLayout(this);
myVideo.setGravity(0x11);
videoParams = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
myVideo.setOrientation(LinearLayout.VERTICAL);
myVideo.addView(video,videoParams);
В портретном режиме видео отображается посередине, причем видео занимает всю ширину и правильную величину высоты. В ландшафтном режиме видео занимает весь экран (что мне и нужно), а myText вообще не отображается.
Спасибо
Chris