Dupliquer possible:
Comment dimensionner une vue Android en fonction des dimensions de son parentcomment utiliser
getMeasuredWidth()
etgetMeasuredHeight
? Il retourne toujours 0. Quelle est la différence entre ceci etgetHeight()
etgetWidth()
?
Réponses
Trop de publicités?Désolé, cette question a déjà été posée. J'ai trouvé la réponse ici - Comment dimensionner une vue Android en fonction des dimensions de son parent
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int parentWidth = MeasureSpec.getSize(widthMeasureSpec);
int parentHeight = MeasureSpec.getSize(heightMeasureSpec);
this.setMeasuredDimension(parentWidth, parentHeight);
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
Vous pouvez utiliser la méthode suivante pour obtenir la largeur et la hauteur de la vue. Par exemple,
int height=yourView.getLayoutParams().height;
int width=yourView.getLayoutParams().width;
Cela donne la valeur convertie de la vue spécifiée dans la présentation XML.
Disons que si la valeur spécifiée pour height est 53dp en XML, vous obtiendrez la valeur convertie en entier sous la forme 80.
J'ai également perdu environ getMeasuredWidth()
et getMeasuredHeight()
getHeight()
et getWidth()
pendant une longue période.......... plus tard, j'ai trouvé onSizeChanged()
méthode pour être VRAIMENT utile.
New Blog Post: comment obtenir la largeur et la hauteur d'un customView (s'étend) dans Android http://syedrakibalhasan.blogspot.com/2011/02/how-to-get-width-and-height-dimensions.html