Maison >Java >javaDidacticiel >Comment définir les marges des boutons à l'intérieur d'un LinearLayout par programme ?

Comment définir les marges des boutons à l'intérieur d'un LinearLayout par programme ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-05 14:06:02892parcourir

How to set margins for buttons inside a LinearLayout programmatically?

Définition des marges dans un LinearLayout par programme

Pour créer un LinearLayout avec des boutons régulièrement espacés qui occupent tout l'écran, il faut plutôt utiliser du code Java de XML. Cependant, obtenir des marges entre les boutons dans ce scénario s'est avéré difficile pour certains développeurs.

Une tentative impliquait l'utilisation de LinearLayout.MarginLayoutParams, mais il lui manque un attribut de poids et ne parvient pas à fonctionner avec l'objet de paramètre de mise en page (lp). De ce fait, il apparaît que manipuler les marges dans ce contexte peut être impossible.

Solution :

Heureusement, il est possible d'implémenter cette fonctionnalité avec une modification mineure de le code :

<code class="java">LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);

LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
     LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);

layoutParams.setMargins(30, 20, 30, 0);

Button okButton=new Button(this);
okButton.setText("some text");
ll.addView(okButton, layoutParams);</code>

Dans ce code, les paramètres de disposition du bouton sont créés à l'aide de LinearLayout.LayoutParams. La méthode setMargins est ensuite utilisée pour spécifier les marges autour du bouton, en garantissant qu'il sera espacé de ses boutons voisins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn