Je veux un TextView
sur le dessus et un VideoView
ci-dessous. Je veux avoir le VideoView
comme centre verical et sous le TextView
. J'utilise RelativeLayout
.Android - RelativeLayout CENTER_VERTICAL et CI-DESSOUS numéro
Je suis en train de le faire dans le code:
RelativeLayout layout = new RelativeLayout(this);
TextView tv = new TextView(this);
tv.setText("Hello");
tv.setGravity(Gravity.RIGHT);
tv.setTextColor(Color.WHITE);
tv.setId(1);
RelativeLayout.LayoutParams one = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
one.addRule(RelativeLayout.ALIGN_PARENT_TOP);
one.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
RelativeLayout.LayoutParams two = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
two.addRule(RelativeLayout.CENTER_VERTICAL);
two.addRule(RelativeLayout.BELOW, 1);
VideoView mVideoView = new VideoView(this);
layout.addView(tv, one);
layout.addView(mVideoView, two);
setContentView(layout);
Le VideoView
obtient placé sous le TextView
, mais le VideoView
est le centre et non verticale.
La raison pour laquelle j'ai utilisé fill_parent/fill_parent pour videoview est que je veux que la vidéo remplisse tout l'espace sous TextView. La vidéo ne va évoluer que jusqu'à ce que son rapport d'aspect le permette, et c'est pourquoi le besoin de centrage, surtout en mode portrait. – Chris