Marges sur gridLayout

Résolu
lamouchetsetse Messages postés 112 Date d'inscription   Statut Membre Dernière intervention   -  
lamouchetsetse Messages postés 112 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Est ce que quelqu'un saurait comment définir des marges sur un GridLayout programmatiquement parlant.

au départ, je pensait faire comme ça:

GridLayout.LayoutParams gridParam = new GridLayout.LayoutParams(GridLayout.LayoutParams.WRAP_CONTENT, GridLayout.LayoutParams.WRAP_CONTENT);

gridParam.setMargin(0,0,200,0)


Mais ça ne fonctionne pas pour les GridLayout.

Du coup j'ai tenté de faire cela:

GridLayout.LayoutParams gridParam = new GridLayout.LayoutParams();
gridParam.width = GridLayout.LayoutParams.WRAP_CONTENT;
gridParam.height = GridLayout.LayoutParams.WRAP_CONTENT;
gridParam.rightMargin = 200;

maVue.addView(monGrid, gridParam)


Mais c'est pas bon non plus, mon GridLayout ne ressemble plus à rien.
Configuration: Linux / Firefox 89.0

2 réponses

BunoCS Messages postés 15952 Date d'inscription   Statut Modérateur Dernière intervention   3 918
 
Hello,

Tu veux rajouter une marge autour du GridLayout c'est bien ça ?
La subtilité est qu'il faut utiliser les params du Layout parent et non du gridLayout. Par exemple, si le composant parent est un FrameLayout :
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout
            .LayoutParams.WRAP_CONTENT);
layoutParams.rightMargin = 200;
gridParam.setLayoutParams(layoutParams);


1
lamouchetsetse Messages postés 112 Date d'inscription   Statut Membre Dernière intervention   2
 
Merci beaucoup Bruno, pour ceux qui passerait par la, voici ce que j'ai fait et qui fonctionne:

FrameLayout.LayoutParams gridParam = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT);
gridParam.rightMargin = 200;
gridParam.setLayoutParams(layoutParams);
monGridLayout.setLayoutParams(gridParam);
maVue.addView(monGridLayout)


j'ajoute que c'est également de cette façon qu'il faut s'y prendre pour les TextView.
encore merci.
0