Bonsoir à toutes et à tous,
Dans une application, je souhaite récupérer la largeur d'un LinearLayout. Je procède comme suit :
AffX me retourne systématiquement 0.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public class MainActivity extends Activity implements SensorEventListener{ LinearLayout affCarte; int AffX, AffY; // dimension en pixels de la fenêtre d'affichage de la carte @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); affCarte = (LinearLayout)findViewById(R.id.AffCarte); AffX = affCarte.getWidth(); }
Si je place l'instruction :
dans un appel d'évènement, par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part AffX = affCarte.getWidth();
cette fois, AffX me retourne bien la largeur du Layout.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 @Override public final void onSensorChanged(SensorEvent event) { AffX = affCarte.getWidth(); }
J'ai essayé de placer cette instruction dans un onStart, dans un onResume : ça retourne toujours 0.
Apparemment, tant qu'on est est dans la phase d'initialisation, on n'arrive pas à récupérer cette valeur. Comment faire car j'ai besoin de connaître cette valeur pour d'autres initialisations (cadrage d'image).
Merci de votre aide.
Pierre
Partager