2010-07-12 15 views
0

Pourquoi cela ne fonctionne-t-il pas? "Premier" chevauché "Deuxième". Qu'est-ce qui ne va pas?Android RelativeLayout

protected View onCreateDialogView() { 
       RelativeLayout layout = new RelativeLayout(mContext); 
       RelativeLayout.LayoutParams mParams = new RelativeLayout.LayoutParams (LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 

       mFirstText = new TextView(mContext); 
       mSecondText.setId(1); 

       mSecondText = new TextView(mContext); 
       mSecondText.setId(2); 

       mParams.addRule(RelativeLayout.ALIGN_PARENT_LEFT, mFirstText.getId()); 
       mParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, mSecondText.getId()); 

       setText(mFirstText, "First"); 
       setText(mSecondText, "Second"); 

       layout.addView(mFirstText, mParams); 
       layout.addView(mSecondText, mParams); 

       return layout; 
     } 

Répondre

1

si vous changez ceci:

RelativeLayout.LayoutParams mParams = new 
RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); 

à ceci:

RelativeLayout.LayoutParams mParams = new 
RelativeLayout.LayoutParams (LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); 

D'ailleurs ... pourquoi ne pas utiliser une mise en page XML au lieu de faire de le code Java?

+0

Rien. C'est juste étirer mon widget Dialog autour de l'écran. – Scit

+0

Encore une question. Comment dois-je retourner une mise en page (ligne 20) si je l'ai réalisé dans un fichier xml? – Scit

+1

Utilisez 'LayoutInflater'. Vous pouvez trouver beaucoup d'exemples sur Google. – Cristian