Affecter de manière déclarative la largeur à la moitié de la largeur d’écran disponible

Est-il possible d’atsortingbuer une largeur de widget à la moitié de la largeur d’écran disponible, et de le faire en utilisant un fichier XML déclaratif?

Si votre widget est un bouton:

    

Je suppose que vous voulez que votre widget occupe la moitié et un autre widget pour prendre l’autre moitié. L’astuce consiste à utiliser LinearLayout, en définissant layout_width="fill_parent" sur les deux widgets et en définissant aussi layout_weight sur les deux widgets. Si deux widgets ont le même poids, LinearLayout divisera la largeur entre les deux widgets.

Utilisation de la disposition des contraintes

  1. Ajouter une ligne direcsortingce
  2. Définir le pourcentage à 50%
  3. Limitez votre vision à la ligne direcsortingce et au parent.

entrer la description de l'image ici

Si vous avez des difficultés à le modifier en pourcentage, consultez cette réponse .

XML

 < ?xml version="1.0" encoding="utf-8"?>     

donnez la largeur à 0dp pour vous assurer que sa taille est exactement conforme à son poids, cela garantira que même si le contenu des vues enfants augmente, elles seront toujours limitées à exactement la moitié (selon le poids)

     

Une autre façon pour un seul élément au centre, qui remplit la moitié de l’écran: