Changer la largeur de AutoCompleteTextView dans Android

Je suis perplexe à ce sujet depuis quelques jours. J’ai un autoCompleteTextView et un bouton divisé 50/50 dans ma mise en page. La saisie semi-automatique fonctionne, mais les suggestions ne prennent que la moitié de l’écran (équivalent à la taille de mon textView). Comment pourrais-je changer cela pour prendre toute la largeur?

Pardon mes terribles compétences de peinture:

Bleu = AutoCompleteTextView Rouge = suggestions de saisie semi-automatique souhaitée

Cela semble être un problème sortingvial, mais changer la largeur en fill_parent ne fonctionne pas. Des idées xml ou par programme?

SOLUTION: myAutoCompleteTextView.setDropDownWidth (ViewGroup.LayoutParams.MATCH_PARENT)

entrer la description de l'image ici

EDIT: Ma première question semble être résolue, mais maintenant, si je change de bouton et de mon autoCompleteTextView, j’aurai un autre problème étrange. La largeur commence à l’endroit où commence textView. Me laissant avec un résultat indésirable.

SOLUTION: Voir edit 1 de l’utilisateur: vikram

entrer la description de l'image ici

Vous pouvez définir cet atsortingbut dans la description de ce widget en utilisant l’atsortingbut:

android:dropDownWidth="match_parent" 

Si vous souhaitez faire cela en Java par programmation, utilisez la méthode setDropDownWidth(int) :

 myAutoCompleteTextView.setDropDownWidth(int) 

Modifier 1:

 Point pointSize = new Point(); getWindowManager().getDefaultDisplay().getSize(pointSize); myAutoCompleteTextView.setDropDownWidth(pointSize.x); 

Je trouve setDropDownAnchor() beaucoup plus pratique.

Il suffit de passer l’id d’une vue et la vue déroulante correspond à sa largeur et à sa position (peu importe où la vue du texte est placée).

Dans votre exemple, cela pourrait être le parent des deux: bouton et affichage du texte.

Vous pouvez également ajuster le début de la largeur avec:

 myAutoCompleteTextView.setDropDownHorizontalOffset(int offset)