Si votre widget est un bouton:
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weightSum="2"
android:orientation="horizontal">
<Button android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="somebutton"/>
<TextView android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
Je suppose que vous voulez que votre widget prenne la moitié et qu'un autre widget occupe l'autre moitié. L'astuce consiste à utiliser un LinearLayout, à définir layout_width="fill_parent"
sur les deux widgets et à définir layout_weight
la même valeur sur les deux widgets également. S'il y a deux widgets, tous deux avec le même poids, LinearLayout divisera la largeur entre les deux widgets.
Utilisation de la disposition des contraintes
Si vous rencontrez des difficultés pour le changer en pourcentage, consultez cette réponse .
XML
la source
donnez une largeur de 0dp pour vous assurer que sa taille correspond exactement à son poids, cela garantira que même si le contenu des vues enfant s'agrandit, il sera toujours limité à exactement la moitié (en fonction de son poids)
la source
Une autre façon pour un élément unique au centre, qui remplit la moitié de l'écran:
la source
la source