Android - RelativeLayout CENTER_VERTICAL et au-DESSOUS de problème
Je veux un TextView
sur le dessus et un VideoView
ci-dessous. Je veux avoir le VideoView
en tant que centre de verical et en dessous de la TextView
. Je suis à l'aide de RelativeLayout
.
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);
La VideoView
est placé au-dessous de la TextView
, mais le VideoView
n'est pas le centre de la verticale.
OriginalL'auteur Chris | 2010-07-24
Vous devez vous connecter pour publier un commentaire.
Vous avez fait votre VideoView fill_parent/fill_parent, ce qui lui donne les mêmes dimensions que son parent RelativeLayout. Si c'est aussi grand que le RelativeLayout, le centrage ne peut pas vraiment travailler. Aussi, vous ne pouvez pas avoir la VideoView être à la fois au-dessous de la TextView et centré verticalement dans le parent; c'est l'un ou l'autre. Au lieu de cela, vous pourriez centre de la ViewView et placez le TextView au-dessus d'elle.
OriginalL'auteur Romain Guy